Database/SQL
사용 데이터 Subquery (서브쿼리) SQL문 안에서 또 다른 SQL문을 사용하는 방법을 의미한다.외부 쿼리의 결과에 따라 조건을 동적으로 결정할 수 있다.서브쿼리를 통해 계산된 값을 사용하여 외부 쿼리를 수행할 수 있다.서브쿼리를 사용하여 특정 그룹에 대한 집계 함수를 계산하고 결과를 외부 쿼리에 사용할 수 있다. 단일 행을 반환하는 서브쿼리 서브쿼리가 한 개의 행을 반환하는 경우 일반적으로 비교 연산자와 함께 사용되어 외부 쿼리와 비교하거나 해당 행을 그대로 사용하기도 한다. Select 절에서 서브쿼리 사용 책 이름과 판매량을 구하시오select bookname, (select count(*) from orders where bookid = B.bookid) as salesCountf..
사용 데이터 NATURAL JOIN 두 테이블 간에 동일한 이름을 가진 열을 기준으로 조인하는 방식NATURAL JOIN은 특별한 조인 조건이 필요하지 않으며, 동일한 이름을 가진 모든 열을 기준으로 조인한다.동일한 이름의 모든 열에 대해 Join하기 때문에 의도치 않은 결과가 나올 수 있다. 이 때에는 Natural Join보다 JOIN ON을 통해 조건을 명시적으로 지정하는 것이 좋다. select *from TABLE1natural join TABLE2; Join ExpressionInner Join, Left Join 등의 Join Expression은 Natural Join과 달리 자동으로 같은 행 이름을 기반으로 조인하지 않는다.ON문을 통해서 명시적인 조인 조건을 제공해야 한다. s..
사용 데이터 JOIN 관계형 데이터베이스에서 두 개 이상의 테이블 간에 데이터를 결합하는 연산이다.JOIN을 사용하면 서로 다른 테이블에 저장된 데이터를 조합하여 필요한 정보를 하나의 결과로 얻을 수 있다. NATURAL JOIN과 Cartesian Product는 여러개의 테이블들을 JOIN하여 결과를 얻어내는 방식들 중 하나이다. NATURAL JOIN두 테이블 간에 동일한 이름을 가진 열을 기준으로 조인하는 방식NATURAL JOIN은 특별한 조인 조건이 필요하지 않으며, 동일한 이름을 가진 모든 열을 기준으로 조인한다.동일한 이름의 모든 열에 대해 Join하기 때문에 의도치 않은 결과가 나올 수 있다. 이 때에는 Natural Join보다 JOIN ON을 통해 조건을 명시적으로 지정하는 것이..
사용 데이터 Set Operations Set 연산은 두 개 이상의 쿼리 결과를 결합하는 데 사용되는 연산자이다. 집합 이론에서 영감을 받았으며, UNION, INTERSECT, EXCEPT 연산자가 각각 합집합, 교집합, 차집합을 나타낸다. 합집합 (Union) “이상미디어” 또는 “굿스포츠”에서 출판한 도서를 검색하시오 (반드시 Set Operations 사용).select * from book where publisher = '이상미디어' union select * from book where publisher = '굿스포츠'; 교집합 (Intersect) 2번 고객과 3번 고객이 동시에 구입한 도서의 id를 검색하시오 (반드시 Set Operations 사용).select booki..
사용 데이터 1. ORDER BY 결과 집합을 정렬하는 데 사용되며, 지정된 열(또는 열의 목록)을 기준으로 오름차순(ASC) 또는 내림차순(DESC)으로 정렬 도서를 이름순으로 검색하시오. select * from book order by bookname asc; 도서를 가격의 내림차순으로 검색하시오. 만약 가격이 같다면 출판사의 오름차순으로 검색한다. select * from book order by price desc, publisher asc; 2. GROUP 2-1. 집계함수집계 함수는 데이터베이스에서 데이터들의 집합에 대한 계산을 수행하는 함수이다. 이러한 함수들은 GROUP BY 절과 함께 사용되는 경우가 많다. COUNT(): 그룹 내의 행 수를 계산. 주로 특정 열이..
1. SELECT FROMSELECT는 데이터베이스에서 데이터를 검색하고 조회하는 데 사용FROM은 SELECT와 함께 사용되는 키워드로, 어떤 테이블에서 데이터를 검색할 것인지를 지정 사용 데이터 모든 도서의 이름과 가격을 검색하시오SELECT bookname, price FROM book; 모든 도서의 도서번호, 도서이름, 출판사, 가격을 검색하시오SELECT bookid, bookname, publisher, price FROM book; 2. SELECT Clause : ALL Attributes Relation의 모든 Attributes(Columns) 을 선택할 경우 와일드카드 (*)을 통해 Select한다. 모든 책을 선택하시오SELECT * from book ..
ALTER TABLE정의된 테이블을 수정하여 재정의하는 작업 1. 데이터 유형 변경ALTER TABLE employees MODIFY salary DECIMAL(10,2); 2. 컬럼의 길이 변경ALTER TABLE products MODIFY product_name VARCHAR(100); 3. 컬럼의 이름 변경ALTER TABLE orders CHANGE order_date order_placed_date DATE; 4. 새로운 컬럼 추가ALTER TABLE customers ADD phone_number VARCHAR(15); 5. 컬럼 삭제ALTER TABLE suppliers DROP contact_name; ALTER TABLE - 제약조건 추가 1. PRIMARY KEY 추가AL..
CREATE TABLE : 테이블 생성 CREATE TABLE TABLE_NAME { #...}; 1. Table의 컬럼과 자료형 지정 CREATE TABLE employee ( employee_id INT AUTO_INCREMENT PRIMARY KEY, age TINYINT, department_id SMALLINT, salary INT); 정수형 (Integer Types)TINYINT: 1 바이트SMALLINT: 2 바이트MEDIUMINT: 3 바이트INT (또는 INTEGER): 4 바이트 CREATE TABLE product ( product_id INT AUTO_INCREMENT PRIMARY KEY, price DECIMAL(10, 2), we..
Database Connection Shell에서 다음과 같은 명령어를 수행하여 데이터베이스에 접속한다. 1. localhost의 MySQL의 root 계정으로 접속하기mysql -u root -p 2. Host, User, Port를 지정하여 접속하기mysql -h -u -p --port mysql -h 172.30.1.22 -u root -p --port 3316 데이터베이스 생성 / 삭제 사용할 데이터베이스를 생성하고 삭제하는 작업을 수행할 수 있다. create database my_database;drop database my_database; 데이터베이스 목록 조회show databases; 데이터베이스 사용 MySQL 데이터베이스 서버에서 특정 데이터베이스를 선택..