>데이터 베이스 >MySQL 튜토리얼 >PostgreSQL에서 테이블을 조인할 때 배열 요소 순서를 어떻게 보존할 수 있습니까?

PostgreSQL에서 테이블을 조인할 때 배열 요소 순서를 어떻게 보존할 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-25 21:09:19304검색

How Can I Preserve Array Element Order When Joining Tables in PostgreSQL?

배열 유형을 사용한 PostgreSQL 조인: 배열 요소 순서 지정

PostgreSQL에서는 배열 유형 열을 사용하여 테이블을 조인해야 하는 경우가 많습니다. 그러나 배열 유형을 처리할 때 요소의 순서를 유지하는 것이 어려울 수 있습니다.

문제:

목표는 항목 테이블에서 순서대로 데이터를 검색하는 것입니다. some_chosen_data_in_order의 배열 유형 열 id_items에 있는 요소 중 table.

시도:

실패한 시도에는 배열 요소의 순서를 유지하지 못하는 JOIN 및 하위 쿼리 접근 방식 사용이 포함됩니다.

해결책:

해결책은 다음을 사용하는 것입니다. unnest() 함수는 배열에서 개별 요소를 반환합니다. id_items에 unnest()를 적용한 LEFT JOIN을 사용하면 원하는 순서로 항목을 가져올 수 있습니다.

예:

SELECT t.*
FROM unnest(ARRAY[1,2,3,2,3,5]) item_id
LEFT JOIN items t on t.id=item_id

이 쿼리는 ID가 1,2,3,2,3,5인 항목 테이블의 항목을 순서대로 표시합니다.

위 내용은 PostgreSQL에서 테이블을 조인할 때 배열 요소 순서를 어떻게 보존할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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