데이터 줄 세우기
ORDER BY
: 가져온 데이터를 정렬해주는 키워드
- ORDER BY [컬럼 이름]으로 사용
- 입력한 [컬럼 이름]의 값을 기준으로 모든 row 정렬
- 기본 정렬 규칙은 오름차순
- ORDER BY [컬럼 이름] = ORDER BY [컬럼 이름] ASC
- 내림차순: ORDER BY [컬럼 이름] DESC
- 여러 컬럼으로 정렬도 가능하며, 키워드 뒤에 [컬럼 이름]을 복수개 입력하면 됨
- 위치한 순서대로 정렬됨
- ex. ORDER BY [컬럼1], [컬럼2] ⇒ [컬럼1]을 기준으로 정렬 → [컬럼1] 값이 동일한 로우 간에(만) [컬럼2]를 기준으로 정렬
- 컬럼 번호로도 정렬 가능
- 이 때, 컬럼 번호는 SELECT 절의 컬럼 이름 순서를 의미함
SELECT *
FROM BigQuery.mypokemon
ORDER BY attack DESC, defense;
SELECT *
FROM BigQuery.mypokemon
ORDER BY 4 DESC, 5;
데이터 순위 만들기
RANK
: 데이터를 정렬해 순위를 만들어주는 함수
- RANK () OVER (ORDER BY [컬럼 이름]) 형식으로 사용
- SELECT절에 사용하며, 정렬된 순서에 순위를 붙인 새로운 컬럼을 보여줌
- RANK는 순위를 메겨주는 함수이지 정렬을 시켜주는 함수가 아님
- 실질적인 정렬은 ORDER BY 절에서 이루어짐을 기억하기
- 데이터 순위 만들기: 데이터를 정렬해 순위를 만들어주는 함수 3가지
- RANK: 공통순위가 있을 경우, 다음 순위로 건너 뜀
- DENSE_RANK: 공통순위가 있어도 다음순위로 뛰어넘지 않음
- ROW_NUMBER: 공동 순위 자체를 무시함