테스트 사이트 - 개발 중인 베타 버전입니다

join on 질문드립니다. 채택완료

rlawhd 5년 전 조회 3,840

</p>

<p>select m.name,c.grade,count(c.grade)</p>

<p>from m_member as m</p>

<p>join m_class as c on c.grade = m.grade </p>

<p>and c.type != 'a'</p>

<p>

이런식의 쿼리가 있는데요

 

c. type이 a가 아닌것중에 count(c.grade) 인데

 

여기서 c.type 이 a인것도 개수 출력하게 할수 있을까요?

 

ex)

이름     등급  count(type=a)  count(type !=a)

햇님반    a          30                  40

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
5년 전

select m.name,c.grade         ,sum(case when c.type = 'a' then 1 else 0 end) as count_a         ,sum(case when c.type != 'a' then 1 else 0 end) as count_not_a from m_member as m join m_class as c on c.grade = m.grade

group by m.name,c.grade

 

이런 식으로 하시면 될 듯하네요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인