IT개발/ORACLE
[ORACLE] GROUP BY 없이 count (COUNT OVER PARTITION BY)
뿅아리개발자
2024. 1. 9. 14:09
member 테이블이 있다.
ID | NAME | GENDER |
1 | 홍길동 | M |
2 | 성춘향 | F |
3 | 이몽룡 | M |
GROUP BY가 들어가는 쿼리문을 작성해야 다음과 같은 값을 얻을 수 있다.
SELECT GENDER, COUNT(*) AS COUNT FROM MEMBER GROUP BY GENDER;
SELECT ? , COUNT(*) AS COUNT FROM TABLE GROUP BY ?;
결과는
GENDER | COUNT |
F | 1 |
M | 2 |
일반 컬럼 모두 COUNT를 같이 조회하고 싶을때는
SELECT NAME
,GENDER
,COUNT(*) OVER() AS CNT
FROM MEMBER
이렇게 사용하면 쿼리 길이를 줄일 수 있다.
ID | NAME | GENDER | COUNT |
1 | 홍길동 | M | 2 |
2 | 성춘향 | F | 1 |
3 | 이몽룡 | M | 2 |