확장 형식
☑️ SELECT (DISTINCT) 열_이름
FROM 테이블_이름
WHERE 조건식
GROUP BY 열_이름
HAVING 조건식
ORDER BY 열_이름 (ASC or DESC)
LIMIT 숫자;
- SELECT문에 나오는 절은 생략 가능하지만, 사용해야 한다면 순서를 지켜야 함
- (괄호 안의 내용)은 생략 가능
- DISTINCT: 중복된 데이터를 1개만 남기고 제거
ORDER BY 절
- 기능: 결과가 출력되는 순서 조절
- ASC(Ascending, 오름차순): 기본값, 생략 가능
DESC(Descending, 내림차순): 열_이름 뒤에 작성하여 설정 가능 - 정렬 기준은 여러 개 열로 지정 가능
> Order by 열_이름1 (ASC or DESC), 열_이름2 (ASC or DESC)
LIMIT 절
- 기능: 출력하는 개수 제한
- 형식: LIMT 시작, 개수
예를 들어, [ LIMIT 3 > LIMIT 0,3과 동일, 즉 0번째부터 3건],
[LIMIT 2,3 > 2번째부터 3건만 조회] - 대부분 ORDER BY로 정렬한 후 앞에서부터 몇 건을 추출
GROUP BY 절
- 기능: 데이터를 그룹화 해주는 기능
- 집계함수: GROUP BY와 함께 주로 사용
SUM() 합계, AVG() 평균, MIN() 최소값, MAX() 최대값
COUNT() 행의 개수, COUNT(DISTINCT) 행의 개수(중복은 1개만 인정)
> COUNT(*)는 모든 행의 개수, COUNT(열_이름)은 NULL값인 데이터를 제외한 행의 개수
☑️ SELECT SUM(amount*price) "총 구매 금액" -- 집계함수는 SELECT 뒤에
FROM 테이블_이름
GROUP BY 열_이름;
(참고) amount와 price는 테이블의 열_이름, 큰따옴표(")로 별칭 사용
HAVING 절
- 기능: 집계 함수에 대해서 조건을 제한하는 것, 반드시 GROUP BY 절 다음에 위치
☑️ SELECT SUM(amount*price) "총 구매 금액"
FROM 테이블_이름
GROUP BY 열_이름;
HAVING SUM(amount*price) > 10000;
'SQL > 혼자 공부하는 SQL (한빛미디어)' 카테고리의 다른 글
| 3장 3절. 데이터 변경을 위한 SQL 문 (4) | 2025.08.11 |
|---|---|
| 3장 1절. 기본 형식 (SELECT) (2) | 2025.08.11 |
| 2장 3절. 데이터베이스 개체 (1) | 2025.08.11 |
| 2장 2절. 데이터베이스 구축 절차 (1) | 2025.08.11 |
| 2장 1절. 데이터베이스 모델링 (2) | 2025.08.08 |