>데이터 베이스 >MySQL 튜토리얼 >그룹 내의 행 수를 기준으로 SQL 쿼리 결과를 필터링하려면 어떻게 해야 합니까?

그룹 내의 행 수를 기준으로 SQL 쿼리 결과를 필터링하려면 어떻게 해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-30 21:22:10215검색

How Can I Filter SQL Query Results Based on Row Counts Within Groups?

개수별 필터링: 집계 쿼리 필터링에 HAVING 사용

SQL에서는 일치하는 행 수를 기준으로 데이터를 필터링할 수 있습니다. 특정 기준. 이를 달성하려면 COUNT(*)와 같은 집계 함수와 함께 HAVING 절을 활용할 수 있습니다.

질문:

결과를 그룹화하고 숫자별로 필터링할 수 있습니까? 그룹 내의 행 수는 무엇입니까? 예:

SELECT * FROM mytable WHERE COUNT(*) > 1 GROUP BY name

답변:

COUNT(*)와 같은 집계 함수를 기준으로 필터링하려면 WHERE 절 대신 HAVING 절을 사용해야 합니다. . HAVING 절은 집계된 데이터 그룹을 필터링하기 위해 특별히 설계되었습니다.

SELECT name, COUNT(*)
FROM mytable
GROUP BY name
HAVING COUNT(*) > 1

이 쿼리는 'mytable' 테이블의 행을 'name' 열을 기준으로 그룹화하고 개수를 계산합니다. 각 그룹. 그런 다음 개수가 1보다 큰 그룹만 포함하도록 결과를 필터링합니다.

위 내용은 그룹 내의 행 수를 기준으로 SQL 쿼리 결과를 필터링하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.