>데이터 베이스 >MySQL 튜토리얼 >단일 SQL SELECT 문에서 DISTINCT와 ORDER BY를 함께 사용하여 중복을 제거하고 날짜별로 정렬하려면 어떻게 해야 합니까?

단일 SQL SELECT 문에서 DISTINCT와 ORDER BY를 함께 사용하여 중복을 제거하고 날짜별로 정렬하려면 어떻게 해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-07 09:12:48918검색

How Can I Use DISTINCT and ORDER BY Together in a Single SQL SELECT Statement to Remove Duplicates and Sort by Date?

단일 SELECT 문에서 DISTINCT 및 ORDER BY 사용

데이터를 정렬하는 동안 결과 집합에서 중복 항목을 제거하려는 시도 특정 날짜에 DISTINCT와 ORDER BY가 함께 작동하지 않는 것 같은 문제가 발생했습니다. 예상됩니다.

ORDER BY 절에 사용된 열이 DISTINCT 함수에 지정되지 않은 경우 문제가 발생합니다. 이 문제를 해결하려면 DISTINCT 내의 집계 함수를 활용하고 원하는 카테고리별로 데이터를 그룹화해야 합니다.

원하는 결과를 얻으려면 다음 코드를 고려하세요.

SELECT DISTINCT Category, MAX(CreationDate) 
FROM MonitoringJob 
GROUP BY Category 
ORDER BY MAX(CreationDate) DESC, Category

이것은 쿼리는 집계 함수 MAX(CreationDate)를 사용하여 가장 최근 생성 날짜를 기준으로 행을 정렬합니다. GROUP BY 절을 사용하면 고유한 범주만 결과 집합에 포함됩니다. 마지막으로 ORDER BY 절이 집계 함수와 카테고리 열에 적용되어 카테고리가 지정된 방식으로 정렬되도록 보장합니다.

위 내용은 단일 SQL SELECT 문에서 DISTINCT와 ORDER BY를 함께 사용하여 중복을 제거하고 날짜별로 정렬하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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