MariaDB SQL

MariaDB Having

ssamhago 2023. 6. 15. 12:07
728x90
320x100

MariaDB Having

 

 

MariaDB having 절을 사용하여 그룹에 대한 검색 조건을 지정하는 방법을 알아봅니다.

 

 

 

MariaDB having 절 소개

 

where 절을 사용하면 select 문에서 반환된 행을 필터링하기 위한 검색 조건을 지정할 수 있습니다. 
그러나 group by 절로 생성된 요약 행을 필터링하는 데 사용할 수 없습니다.

group by 절에 의해 생성된 요약된 행을 필터링하기 위한 검색 조건을 지정하려면 having 절을 사용합니다.

다음은 having 절의 구문을 보여줍니다.

select
    select_list
from
    table_name
group by
    column1,
    column2,
    ...
having
    search_condition;

having 절은 group by 절 바로 뒤에 나타납니다. 
having 절을 형성하려면 하나 이상의 부울 표현식으로 구성될 수 있는 search_condition을 지정합니다. 
select 문은 search_condition이 true로 평가되도록 하는 그룹(또는 행)만 반환합니다.

 

 

 

MariaDB having 절 예제

 

nation 샘플 데이터베이스의 countries 및 regions 테이블을 사용합니다.

샘플 DB

 


1) 그룹 예를 필터링하기 위해 MariaDB having 절 사용

다음 예에서는 having 절을 사용하여 10개 이상의 국가가 있는 지역을 찾습니다.

select
    regions.name region,
    count(country_id) country_count
from countries
inner join regions using (region_id)
group by (regions.name)
having count(region_id) > 10
order by country_count desc;

having절 사용

 

2) 복잡한 조건 예제와 함께 MariaDB having 절 사용

다음 예에서는 having 절을 사용하여 국가가 10개 이상이고 총 면적이 1,000,000 km2 보다 큰 국가를 찾습니다.

select
    regions.name region,
    count(country_id) country_count,
    sum(area) area
from countries
inner join regions using (region_id)
group by (regions.name)
having
    count(region_id) > 10 and
    area > 1000000
order by area desc, country_count desc;

having 절 사용

 

 

이상으로 MariaDB having 절을 사용하여 그룹에 대한 검색 조건을 지정하는 방법을 알아봤습니다.

 

 

※ 원문출처 : https://www.mariadbtutorial.com/mariadb-basics/mariadb-having/

728x90
반응형

'MariaDB SQL' 카테고리의 다른 글

이벤트 스케줄러 목록조회  (0) 2023.06.20
MariaDB Subqueries  (0) 2023.06.16
MariaDB Group By  (0) 2023.06.14
MariaDB Left Join  (0) 2023.06.13
MariaDB Inner Join  (0) 2023.06.08