집 >데이터 베이스 >MySQL 튜토리얼 >PostgreSQL 창 함수는 행을 이웃 항목과 어떻게 비교할 수 있습니까?
창 함수를 사용하여 PostgreSQL의 행 비교
현재 행을 인접 행과 비교하면서 데이터베이스에서 데이터를 검색하는 것은 유용하게 사용될 수 있습니다. 사례. PostgreSQL에서 창 함수는 이 작업에 대한 강력한 솔루션을 제공합니다.
이러한 기술 중 하나에는 지연 및 선도 기능을 사용하는 것이 포함됩니다. lag는 이전 행에서 값을 검색하고, Lead는 지정된 오프셋을 기반으로 후속 행에서 값을 검색합니다.
예:
테이블이 있다고 가정합니다. 위치와 숫자라는 두 개의 열이 있습니다. 짝수 중에서 홀수를 선택하고 싶습니다. 창 함수를 사용하면 다음 쿼리로 이를 달성할 수 있습니다.
SELECT numbers FROM ( SELECT numbers, lag(numbers,1) OVER w AS previous_number, lead(numbers,1) OVER w AS next_number FROM table WINDOW w AS (PARTITION BY position ORDER BY position) ) subquery WHERE previous_number % 2 = 0 AND next_number % 2 = 0 AND numbers % 2 = 1;
창 함수는 여러 가지 이점을 제공합니다.
추가 고려 사항:
위 내용은 PostgreSQL 창 함수는 행을 이웃 항목과 어떻게 비교할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!