728x90
1) SELECT
SELECT * FROM 데이터베이스명.테이블명;
SELECT 컬럼명1, 컬럼명2, ... FROM 데이터베이스명.테이블명;
*(Asterisk, 아스터리스크)는 모든 컬럼을 지칭
2) WHERE
SELECT * FROM 데이터베이스명.테이블명 WHERE 조건식;
SELECT * FROM 데이터베이스명.테이블명 WHERE 조건식1 AND 조건식2;
SELECT * FROM 데이터베이스명.테이블명 WHERE 조건식1 OR 조건식2;
...
3) GROUP BY
- 그룹별 특정 컬럼에 대해 원하는 집계값을 보여줌
- GROUP BY 하지 않은 컬럼을 SELECT하면 오류가 남(집계는 상관없음)
SELECT 컬럼명1, SUM(컬럼명2)
FROM 데이터베이스명.테이블명
GROUP BY 컬럼명1;
- 집계: SUM, COUNT, MIN, MAX, AVG...
SELECT 컬럼명1, MIN(컬럼명2) AS 새로운컬럼명
FROM 데이터베이스명.테이블명;
- AS(Alias) 생략가능
4) PARTITION BY
- 전체 데이터에서 원하는 값을 보여줌
SELECT 컬럼명1, SUM(컬럼명2) OVER(PARTITION BY 컬럼명1)
FROM 데이터베이스명.테이블명;
5) HAVING
- GROUP BY절과 함께 사용되며 조건비교를 할 때 사용됨 → GROUP BY 뒤에 작성해야 함
- WHERE식과 유사하나 그룹함수에 포함된 조건식임
SELECT 컬럼명1,COUNT(컬럼명2)
FROM 데이터베이스명.테이블명
WHERE 조건식
GROUP BY 컬럼명2
HAVING 그룹함수에 포함된 조건식;
6) ORDER BY
- ASC 오름차순, DESC 내림차순. ASC 오름차순이 디폴트 값
- 여러 개를 기준으로 둘 수 있음
- Alias나 숫자(열 순서)를 이용할 수도 있음
SELECT *
FROM 데이터베이스명.테이블명
ORDER BY 컬럼명1 DESC;
- 작성 순서
SELECT - FROM - WHERE - GROUP BY - HAVING - ORDER BY
- 실행 순서
FROM - WHERE - GROUP BY - HAVING - SELECT - ORDER BY
728x90
'데이터 분석 > [SQL] 기초' 카테고리의 다른 글
[SQL] 데이터 삭제하기(drop/delete/truncate) (0) | 2023.07.04 |
---|---|
[HackerRank] The Report (0) | 2022.03.31 |
[HackerRank] Average population of each continent (0) | 2022.03.30 |
[SQL] 셀프 조인(Self Join) (0) | 2021.10.02 |
[SQL] 조회 (0) | 2021.09.15 |