삽질의 현장/- DataBase

[삽잡이::sql] 두 종류의 COUNT를 한번에 얻어보자! 특정 조건 Count

shovelman 2016. 7. 13. 23:24


Query문을 작성하며 원하는 결과가 포함된 

데이터의 개수를 구하기 위해

COUNT()를 사용하곤 합니다.


그런데, 예를 들어봅시다.



이와 같은 Table이 있는데,

해당 Table의 전체 개수와 

Age가 10대인 데이터의 개수만을 구하기 위해서는

어떻게 해야할까요??


물론, 쿼리를 두번 날릴 수 있지만,

성능을 위해 한번에 처리하는 것이 좋을 것입니다.

(물론, 저정도 양이라면... 이런 고민 조차가...)


1
SELECT COUNT(*), COUNT(IF(age > 20, age, NULL)) FROM info_table;
cs


이와 같이 전체 데이터의 개수와,

IF문을 사용하여 age가 10대인 데이터의 개수를

한 Query에서 동시에 구할 수 있습니다.


예... 그렇습니다.

굳~