책 내용 질문하기
Group by와 where때문에 헷갈리네요.
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
122
조회수
86
작성일
2017-04-05
작성자
첨부파일
보통 문제에 ~끼리나 ~별로 란 말이 있으면 group by를 쓰는데 문제 6번엔 그런 구문이 없어서 where을 써서 문제를 풀었습니다. 답을 보니 group by 를 썼던데 좀더 구분할수 있는 방법이 있을까요?? 그리고 저는
select 이름 from 자격증 where count(이름)>=2; 로 해서 풀었는데 다른 분이 올리신 문의글을 보니 group by 쓸때랑 결과가 달라진다 하셨는데 무슨 차이가 있는지 좀더 구체적으로 알려주시면 이해하는데 도움이 많이 될거 같습니다~
답변
2017-04-06 09:55:28
안녕하세요.
count와 같은 집계함수는 where 절에는 사용할 수 없습니다.
집계함수는 그룹으로 지정된 필드를 대상으로 한 Having 절에 사용할 수 있습니다.
그러므로 아래와 같이 작성해야 합니다.
SELECT 이름
FROM 자격증
GROUP BY 이름
HAVING COUNT(*) >= 2;
오늘도 즐거운 하루 되세요.
-
*2017-04-06 09:55:28
안녕하세요.
count와 같은 집계함수는 where 절에는 사용할 수 없습니다.
집계함수는 그룹으로 지정된 필드를 대상으로 한 Having 절에 사용할 수 있습니다.
그러므로 아래와 같이 작성해야 합니다.
SELECT 이름
FROM 자격증
GROUP BY 이름
HAVING COUNT(*) >= 2;오늘도 즐거운 하루 되세요.