SQL

SQL 두 종류이상 동시 count()하기

MDanderson 2022. 10. 29. 07:48

상황1. id gildong인 사람만 카운트 , id samsam인 사람만 카운트

SELECT COUNT(CASE WHEN id='gildong' THEN 1 END) AS gildongCnt,
COUNT(CASE WHEN id='samsam' THEN 1 END) AS samsamCnt
FROM expenditure;

 

#조건 여러개(다중) 카운트

상황2. id YUMDDA인 사람이 돈을 1천만이상 쓴 데이터만 카운트 , id samsam인 사람만 카운트

SELECT COUNT(CASE WHEN id='YUMDDA' THEN 1 END AND CASE WHEN money > 10000000 THEN 1 END) AS YUMDDACnt, 
COUNT(CASE WHEN id='samsam' THEN 1 END) AS samsamCnt
FROM expenditure;

상황3. 다른 테이블의 특정 컬럼 Count 개수 구하기

SELECT COUNT(CASE WHEN id='gildong' THEN 1 END) AS gildongCnt,
COUNT(CASE WHEN id='samsam' THEN 1 END) AS samsamCnt,
(SELECT COUNT(*)
FROM RelationTable) AS relationCnt
FROM expenditure;
 

출처 : https://java119.tistory.com/36