> 데이터 베이스 > MySQL 튜토리얼 > PostgreSQL에서 각 범주의 최대 날짜 ID를 찾는 방법은 무엇입니까?

PostgreSQL에서 각 범주의 최대 날짜 ID를 찾는 방법은 무엇입니까?

DDD
풀어 주다: 2024-12-30 02:14:08
원래의
574명이 탐색했습니다.

How to Find the Maximum Date ID for Each Category in PostgreSQL?

PostgreSQL에서 각 카테고리의 최대 날짜 ID 선택

카테고리, 날짜, ID에 관한 데이터가 포함된 테이블이 포함된 데이터베이스에서 검색이 가능합니다. 각 카테고리의 가장 최근 날짜가 포함된 ID입니다. 다음 샘플 데이터를 고려하십시오.

id  category  date
1   a         2013-01-01
2   b         2013-01-03
3   c         2013-01-02
4   a         2013-01-02
5   b         2013-01-02
6   c         2013-01-03
7   a         2013-01-03
8   b         2013-01-01
9   c         2013-01-01
로그인 후 복사

각 범주에 대해 최대 날짜가 있는 ID를 선택하기 위해 PostgreSQL은 DISTINCT ON 절을 제공합니다. 이 절을 사용하면 고유한 값을 선택하면서 지정된 열을 기준으로 행을 그룹화하고 비교할 수 있습니다.

SELECT DISTINCT ON (category)
       id  -- , category, date  -- any other column (expression) from the same row
FROM   tbl
ORDER  BY category, date DESC;
로그인 후 복사

쿼리는 범주 오름차순, 날짜 내림차순으로 행을 정렬하는 데 우선 순위를 둡니다. 결과적으로 각 고유 카테고리에 대해 최대 날짜가 있는 마지막 행이 반환됩니다.

id  category  date
7   a         2013-01-03
2   b         2013-01-03
6   c         2013-01-03
로그인 후 복사

위 내용은 PostgreSQL에서 각 범주의 최대 날짜 ID를 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿