커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
COUNT(*) , COUNT(ed.done) 의 값이 다른 이유가 궁금합니다!
[왕초보] 엑셀보다 쉬운, SQL
3주차
북마크
양*혁
댓글
4
추천
1
조회수
6
조회수
6
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


count(ed.done) desc 를 한 값과

count(*)를 한 값이 같았습니다 .


혹시 값이 같은 이유를 알 수 있을까요?


나름의 해석은

count(ed.done) desc -> count를 하는데! enrolled_id의 done 값을 count하라 라고 해석했고

count(*)은 그냥 전체? 라서 두개의 값이 다를 것이라 생각 했습니다 .


하지만 두개의 구문을 실행시켜본 결과 실행결과 값은 같았습니다!

이유가 너무 궁금합니다!



스파르타 즉문즉답






SELECT e.enrolled_id , e.user_id , count(ed.done) as cnt FROM enrolleds e 

inner join enrolleds_detail ed on e.enrolled_id = ed.enrolled_id 

WHERE ed.done = 1

GROUP BY e.enrolled_id, e.user_id 

ORDER BY COUNT(ed.done) DESC 


SELECT e.enrolled_id , e.user_id , count(*) as cnt FROM enrolleds e 

inner join enrolleds_detail ed on e.enrolled_id = ed.enrolled_id 

WHERE ed.done = 1

GROUP BY e.enrolled_id, e.user_id 

ORDER BY COUNT(*) DESC 


취소
 공유
취소
댓글 0
댓글 알림
나의얼굴