1. SQL 명령문의 표준 형식
SELECT [DISTINCT] {* | column[alias] ...}
FROM table
[WHERE condition]
[GROUP BY group_by_expression]
[HAVING group_condition]
[ORDER BY column];
- 기본적인 SQL 질의
SELECT 절
- 질의 결과를 포함 하려는 속성(attribute)들의 리스트
- DISTINCT 절을 사용해서 중복 제거
FROM 절
- 질의에서 필요로 하는 테이블의 리스트
WHERE 절
- SELECT 연산의 조건
GROUP BY 절
- 동일한 값을 갖는 튜플들을 한 그룹으로 묶는다.
HAVING 절
- 튜플들의 그룹이 만족해야 하는 조건
ORDER BY 절
- 결과로 나오는 튜플들의 정렬 순서
- SQL 질의 오류 순서
오류 순서 : FROM > HAVING > GROUP BY > WHERE > SELECT > ORDER BY
* Oracle optimizer가 최적이라 생각함에 따라 순서는 다를 수 있음
2. 칼럼에 대한 별명 부여
- 칼럼 이름과 별명 사이에 공백을 추가
-- 부서 테이블에서 부서 이름 칼럼의 별명은 dept_name,
-- 부서번호 칼럼의 별명은 DN으로 부여하여 출력하여라.
SELECT DNAME dept_name, DEPTNO DN FROM DEPARTMENT;
- 칼럼 이름과 별명 사이에 AS 키워드를 추가
-- 부서 테이블에서 부서 이름 칼럼의 별명은 dept_name,
-- 부서번호 칼럼의 별명은 DN으로 부여하여 출력하여라.
SELECT DNAME AS dept_name, DEPTNO AS DN FROM DEPARTMENT;
- 큰따옴표(Double Quote) 사용 ★
큰따옴표(Double Quote)는 어떤 경우에 사용하는가?
1) 칼럼 이름과 별명 사이에 공백을 추가하는 경우
2) 특수문자를 추가하거나 대소문자를 구분하는 경우
-- 부서 테이블에서 부서이름 칼럼의 별명은 "Department Name",
-- 부서번호 칼럼의 별명은 "부서번호#"으로 부여하여 출력하여라.
SELECT DNAME "Department Name", DEPTNO "부서번호#" FROM DEPARTMENT;