관계데이터베이스를 위한 표준 질의어, 비절차적 언어
데이터 정의어 (DDL)
테이블을 생성하고 변경 삭제기능 [CREATE, ALTER, DROP]
데이터 조작어 (DML)
데이터를 삽입, 수정, 삭제, 검색하는 기능[SELECT, INSERT,DELETE]
데이터 제어어 (DCL)
데이터에 접근 및 사용 권한 부여 및 취소 [GRANT, REVOKE]

SELECT 질의 결과 속성리스트를 열거
FROM 어느 테이블이 사용되는지 열거
WHERE 질의 조건 작성
(1) 데이터를 검색하는 기본 문장.
(2) SELECT 절에서 열 순서는 결과 테이블의 열 순서를 결정

(3) 모든 속성 검색할 경우 * 로 대체가능
예시: SELECT *
(4) ALL: 결과 테이블이 튜플의 중복을 허용하도록 지정, 생략가능
(5) DISTINCT: 결과 테이블이 튜플의 중복을 허용하지 않도록 지정


WHERE PRICE<20000 [가격이 20000미만인 것 ]
WHERE PRICE BETWEEN 10000 AND 20000 [가격이 만원이상2만원이하인것]
WHERE PRICE>=10000 AND PRICE<=20000 둘중 하나 사용하면 됨.
WHERE조건- 집합
IN, NOT IN
예시
질의)출판사가 굿스포츠 혹은 대한미디어인 도서 검색
SELECT *
FROM BOOK
WHERE publisher IN ('굿스포츠','대한미디어');
##굿스포츠 혹은 대한미디어가 아닌 검색은 NOT IN
WHERE조건-패턴
LIKE, 와일드문자

질의) '축구의 역사'를 출간한 출판사를 검색하세요
SELECT publisher
FROM BOOK
WHERE bookname LIKE '축구의 역사';
///축구가 포함된 -> LIKE '%축구%'
///"구"가 왼쪽두번째 위치 -> LIKE '_구%'
WHERE조건-복합조건
AND,OR연산자
질의) 축구에 관한 도서중 가격이 20000만원 이상인 도서 검색
SELECT *
FROM BOOK
WHERE publisher LIKE '%축구%' AND price>=20000;
///출판사가 '대'로 시작하는 5자리 이름을 가진 도서정보 검색
WHERE publisher='대____';
ORDER BY
ASC, DESC
오름차순 ASC / 내림차순 DESC
질의) 가격은 내림차순하되, 가격동일시 출판사를 오름차순 하라
==>>ORDER BY price DESC, publisher ASC;
집계함수: 특정 속성 값을 통계적으로 계산하는 함수 , NULL값 제외하고 계산함
WHERE절에서 사용불가, SELECT나 HAVING절에서만 사용가능

[참고] 가독성과 호환성을 위해 AS키워드 권장
COUNT
COUNT(*)는 NULL여부와 관계없이 전체 튜플개수 카운트함.
COUNT(속성)은NULL제외

GROUP BY
특정속성의 값이 같은 튜플을 모아 그룹을 만든 후 검색


조인검색: 여러개의 테이블을 연결하여 데이터를 검색하는 것
세개의 테이블을 이용한 SQL질의
