인프런 커뮤니티 질문&답변

J Kim님의 프로필 이미지

작성한 질문수

(2024) 일주일만에 합격하는 정보처리기사 실기

생성자와 메서드

평소에 궁금했던 sql 문의드립니다

해결된 질문

24.07.25 18:49 작성

·

98

0

예시 문제학생 테이블에서 성적이 80점 이상인 학생의 이름을 뽑아라.평소 쿼리를 짤때 보면 Select 이름 from 학생Where 성적 >=80;이렇게 해왔는데, 가끔 기출이나 이런걸 보면 답지에Select 이름 from 학생Having 성적 >=80;이런식으로 having 절을 유독 사용하는데,, 답은 똑같으나 꼭 having을 사용해야하는건지 헷갈립니다.선생님 강의가 여지껏 들은 강의중 최고에요.. 딴말 필요없이 필요한거만 긁어주시네요

답변 1

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

2024. 07. 25. 20:44

안녕하세요,결과만 똑같이 나오면 쿼리 자체는 달라도 상관없겠습니다만,

having절은 그룹을 묶었을 때 그 세부조건으로 사용되는 쿼리입니다.

아마 문제나 쿼리가 달랐을 것 같은데 예제가 있을지 말씀 부탁드립니다.

having의 예시는 이런 겁니다.

SELECT department_id, AVG(salary) AS avg_salary 
FROM employees 
GROUP BY department_id 
HAVING AVG(salary) >= 50000; 

부서별로 묶은 상태에서 평균 급여가 50,000원 이상인 경우의 튜플들을 선택

SELECT department_id, COUNT(*) AS num_employees 
FROM employees 
GROUP BY department_id 
HAVING COUNT(*) >= 10;

각 부서에서 직원 수가 10명 이상인 부서와 직원 수 조회아마 그룹을 묶는 예시를 보신 것 같은데,

다시 발견하시면 질문 부탁드립니다.


 

덧붙여 과찬 너무 감사드립니다.

혹시 시간적 여유가 있으시면 좋은 수강평 부탁드립니다.

좋은 하루 보내세요.

주말코딩님의 프로필 이미지
주말코딩
지식공유자

2024. 07. 25. 20:45

인프런 UI가 바뀌었는지 줄글로 입력이 되어 이미지로 다시 붙여드립니다.(아무리 코드블럭으로 입력을 해도 이상하게 나오네요..)화면 캡처 2024-07-25 204507.png
J Kim님의 프로필 이미지
J Kim
질문자

2024. 07. 25. 21:54

선생님 진짜 감동입니다하나하나 성심 성의껏 대답해주시고 정말 감사합니다. 마침 쉬던 중 리뷰 남겻습니다! 앞으로 남은 며칠도 화팅!!
주말코딩님의 프로필 이미지
주말코딩
지식공유자

2024. 07. 25. 22:03

저거 마크다운 문법이라서 이상하게 나오네요. count(*) <- 괄호 안에 "모든 것"을 뜻하는 별표 들어가야합니다. 행복한 하루 보내세요.
J Kim님의 프로필 이미지

작성한 질문수

질문하기