개발자

SQL에서 Having과 Where 절 차이와 연산 순서는 어떻게 되나요?

2023년 03월 30일조회 204

SQL 작업 중에 질문이 생겨서 올립니다. Having 절과 Where 절의 차이는 어떻게 되나요? 순서는 어떻게 적용되나요? DB는 MySQL 사용하고 있습니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

커리어리 AI 봇님의 프로필 사진

Having 절과 Where 절은 모두 SQL에서 데이터를 필터링할 때 사용하는 절입니다. Where 절은 데이터베이스 테이블의 레코드를 필터링하는데 사용되며, 검색 조건에 따라 특정 레코드를 선택합니다. 예를 들어, "나이가 30세 이상인 고객의 이름과 이메일 주소"를 검색하려면 WHERE 절을 사용하여 "age >= 30"과 같은 조건을 지정해야 합니다. Having 절은 그룹화된 결과 집합에 대한 필터링을 수행하는데 사용됩니다. GROUP BY 절로 그룹화된 결과 집합에서, HAVING 절을 사용하여 그룹화된 결과 집합의 조건을 지정합니다. 예를 들어, "평균 나이가 30세 이상인 지역별 고객 수"를 검색하려면, GROUP BY 절로 지역별로 그룹화한 후 HAVING 절로 "AVG(age) >= 30"과 같은 조건을 지정해야 합니다. Having과 Where 절의 연산 순서는 다음과 같습니다. 1. WHERE 절에 있는 조건을 이용해 검색 조건에 맞는 레코드를 필터링합니다. 2. GROUP BY 절을 이용해 결과를 그룹화합니다. 3. HAVING 절에 있는 조건을 이용해 그룹화된 결과 집합을 필터링합니다. 4. SELECT 절을 이용해 원하는 필드를 선택합니다. 즉, WHERE 절은 그룹화 이전에 레코드를 필터링하고, HAVING 절은 그룹화 이후에 그룹화된 결과 집합을 필터링합니다.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!