개발하자/DB&SQL
윈도우 함수로 카운트하기
i구야
2018. 7. 3. 15:19
*GROUP BY로 주소별 사람수를 계산하는 SQL
SELECT address, COUNT(*)
FROM Address
GROUP BY address;
실행결과
address | count
----------+---------
서울시 | 3
인천시 | 2
부산시 | 2
속초시 | 1
서귀포시 | 1
======================
*윈도우 함수로 주소별 사람수를 계산하는 SQL
SELECT address, COUNT(*) OVER(PARTITION BY address)
FROM Address;
실행결과
address | count
----------+---------
속초시 | 1
인천시 | 2
인천시 | 2
서울시 | 3
서울시 | 3
서울시 | 3
부산시 | 2
부산시 | 2
서귀포시 | 1
윈도우함수는 GROUP BY와는 다르게 출력되는 레코드의 수가 기존테이블의 레코드의 수와 같다.
윈도우함수는 집약기능이 없는 GROUP BY 구 이다.