group by 를 조건부로 할수...있을까요? 2

by 노쿤 [MySQL] [2023.04.13 14:57:16]


첨부 이미지 내용의 테이블에서

group_id나 group_name으로 group by를 실행하고싶습니다.

문제는 group이 없는 회원들은 묶고싶지않은데 group이 없는 회원들도 묶여서 나오게 되는걸 쿼리상으로 풀어보고싶은데요...

 

원하는 결과는

name

그룹A

이영선

박상연

그룹B

그룹C

 

이렇게 결과가 나오도록 하고싶은데...쿼리만으로 처리가 가능할까요?

by 마농 [2023.04.13 15:59:27]
SELECT IFNULL(group_id  , member_id  ) id
     , IFNULL(group_name, member_name) name
     , COUNT(*) cnt
     , SUM(amt) amt
  FROM t
 GROUP BY IFNULL(group_id  , member_id  )
        , IFNULL(group_name, member_name)
;

 


by 노쿤 [2023.04.13 16:17:57]

캄사합니다! group by 후 ifnull로 대체 그룹컬럼값을 지정할수있군요! 소중한 지식 감사합니다!!!

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입