Database
사용 데이터 Subquery (서브쿼리) SQL문 안에서 또 다른 SQL문을 사용하는 방법을 의미한다. 외부 쿼리의 결과에 따라 조건을 동적으로 결정할 수 있다. 서브쿼리를 통해 계산된 값을 사용하여 외부 쿼리를 수행할 수 있다. 서브쿼리를 사용하여 특정 그룹에 대한 집계 함수를 계산하고 결과를 외부 쿼리에 사용할 수 있다. 단일 행을 반환하는 서브쿼리 서브쿼리가 한 개의 행을 반환하는 경우 일반적으로 비교 연산자와 함께 사용되어 외부 쿼리와 비교하거나 해당 행을 그대로 사용하기도 한다. Select 절에서 서브쿼리 사용 책 이름과 판매량을 구하시오 select bookname, (select count(*) from orders where bookid = B.bookid) as salesCount fr..
사용 데이터 NATURAL JOIN 두 테이블 간에 동일한 이름을 가진 열을 기준으로 조인하는 방식 NATURAL JOIN은 특별한 조인 조건이 필요하지 않으며, 동일한 이름을 가진 모든 열을 기준으로 조인한다. 동일한 이름의 모든 열에 대해 Join하기 때문에 의도치 않은 결과가 나올 수 있다. 이 때에는 Natural Join보다 JOIN ON을 통해 조건을 명시적으로 지정하는 것이 좋다. select * from TABLE1 natural join TABLE2; Join Expression Inner Join, Left Join 등의 Join Expression은 Natural Join과 달리 자동으로 같은 행 이름을 기반으로 조인하지 않는다. ON문을 통해서 명시적인 조인 조건을 제공해야 한다. ..
사용 데이터 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 bookid from..
사용 데이터 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 FROM SELECT는 데이터베이스에서 데이터를 검색하고 조회하는 데 사용 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 3. SELECT Cl..
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), weight FLOAT ); 부동소수점형..
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 데이터베이스 서버에서 특정 데이터베이스를 선택하고 활성화하는 역할...