데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
서브 쿼리 말고는 저는 방법을 모르겠어서 질문 드려 봅니다.
a,b,c,d,e, 컬럼이 있을때
select (select count(*) from table where a=1) as a,(select count(*) from table where b=1) as b,(select count(*) from table where c=1) as c
저는 이런식으로 서브쿼리로 결과값을 뽑아내는데 너무 비효율적인거 같은데 어떻게 해야 좀 깔끔하게 뽑아낼수 있을지
알려주실수 있으실까요..
Comment 1
-
처리짱
2019.01.09 20:30
select sum(case when a=1 then 1 else 0 end) as a,
sum(case when b=1 then 1 else 0 end) as b,
sum(case when c=1 then 1 else 0 end) as c
from table