[정보처리기사] 데이터베이스 - Select 문

Posted by 앱해피
2015. 9. 28. 15:41 정보처리기사

Select문

 

테이블을 구성하는 튜플들 중에서 전체 또는 조건을 만족하는 튜플을 검색하여 주기억장치 상에 임시 테이블을 구성시키는 명령문이다.

 

SELECT Predicate [테이블명.]속성명1, [테이블명.]속성명2, ...

FROM 테이블명1, 테이블명2, ...

[WHERE 조건]

[GROUP BY 속성명1, 속성명2, ...]

[HAVING 조건]

[ORDER BY 속성명 [ASC/DESC]];

 

1. Select 절

 

* Predicate : 불러온 튜플 수를 제한할 명령어를 기술함

 

- All : 모든 튜플을 검색할 때 지정하는 것으로, 주로 생략

 

- DISTINCT : 중복된 튜플이 있으면 그 중 첫 번째 한 개만 검색함

 

- DISTINCTROW : 중복된 튜플을 검색하지만 선택된 속성의 값이 아닌, 튜플 전체를 대상으로 함

 

* 속성명 : 검색하여 불러올 속성(열) 및 수식들을 지정함

 

- 기본 테이블을 구성하는 모든 속성을 지정할 때는 '*'를 기술한다.

 

- 두 개 이상의 테이블을 대상으로 검색할 때는 반드시 테이블명.속성명으로 표현해야 한다.

 

2. From 절 : 질의에 의해 검색될 데이터들을 포함하는 테이블명을 기술함

 

3. Where 절 : 검색할 조건 기술

 

4. GROUP BY 절 :

 

* 특정 속성을 기준으로 그룹화하여 검색할 때 그룹화 할 속성을 지정함

 

* 일반적으로 GROUP BY 절은 그룹 함수와 함께 사용된다.

 

* 그룹 함수의 종류

 

- COUNT(속성명) : 그룹별 튜플 수를 구하는 함수

- MAX(속성명) : 그룹별 최대값을 구하는 함수

- MIN(속성명) : 그룹별 최소값을 구하는 함수

- SUM(속성명) : 그룹별 합계를 구하는 함수

- AVG(속성명) : 그룹별 평균을 구하는 함수

 

5. HAVING : GROUP BY와 함께 사용되며, 그룹에 대한 조건을 지정함

 

6. ORDER BY 절 : 특정 속성을 기준으로 정렬하여 검색할 때 사용함

 

* 속성명 : 정렬의 기준이 되는 속성명을 기술함

 

* [ASC/DESC] : 정렬 방식으로서 'ASC'는 오름차순, 'DESC'는 내림차순임, 생략하면 오름차순으로 정렬