Postgress의 Where vs Having
WHERE 자구는 이 조건을 각 줄에 적용한 다음 GROUP by 자문에서 이 줄들을 그룹으로 묶습니다.단, HAVING 자구는 행을 그룹화한 후 조건을 그룹에 적용합니다.이것이 바로 HAVING 자구가 GROUP BY 자구 다음에 응용되고 WHERE 자구가 GROUP BY 자구 앞에 응용되는 이유이다.
예제
한 학교에서 학생들이 등록할 수 있는 과정을 제공한다고 가정해 보자. 학교는 스타 학생이 마지막 학년에서 8점 이상을 받은 학생들보다 더 우수하다고 생각한다. 표를 보자.
만약 지령이 누가 스타 학생인지 알고 싶다면, 우리는 보통 이런 조회를 사용한다
select *
from inscription
where final_grade > 8
그러나 어떤 그룹 중 한 명 이상의 스타 학생을 보고 싶으면 HAVING 자구를 사용해야 한다
select course_id, count(*) enrolled_students
from inscription
where final_grade > 8
group by course_id
having count(*) > 1
나는 이 매우 어리석은 예가 너를 도울 수 있기를 바란다. 읽어 줘서 고마워!!
Reference
이 문제에 관하여(Postgress의 Where vs Having), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sabrinasuarezarrieta/where-vs-having-in-postgress-410n텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)