두 테이블에서 count 함수 0 2 504

by 체라 [SQL Query] count [2018.03.28 16:21:31]


code name eng
ab 1번학과 one
bc 2번학과 two
cd 3번학과 three
11 4번학과 four

 

code 출입일자
ab 2016년 8월
bc 2017년 5월
cd 2017년 11월
ab 2017년 1월
ab 2017년 1월
cd 2017년 5월
ab 2017년 8월

 

여기서 2017년 출입횟수가 2회 이상인 학과의

학과명, 출입인원수, 학교영어명칭을 구하고 싶습니다.

 

두 테이블 join 후 카운터 함수를 쓸려니 계속 오류가 납니다. ㅠㅠ

by 마농 [2018.03.28 16:39:13]
-- 1. 조인 후 카운트 --
SELECT c.code
     , c.name
     , c.eng
     , COUNT(*) cnt
  FROM code c
     , data d
 WHERE c.code = d.code
   AND d.dt LIKE '2017%'
 GROUP BY c.code, c.name, c.eng
HAVING COUNT(*) >= 2
;
-- 2. 카운트 후 조인 --
SELECT c.code
     , c.name
     , c.eng
     , d.cnt
  FROM code c
     , (SELECT code
             , COUNT(*) cnt
          FROM data
         WHERE dt LIKE '2017%'
         GROUP BY code
        HAVING COUNT(*) >= 2
        ) d
 WHERE c.code = d.code
;

 


by 체라 [2018.03.28 18:58:01]

정말 감사합니다. 이제 이해할수 있을 것 같습니다.

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