"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > PostgreSQL에서 어레이를 결합하려면 어떻게해야합니까?

PostgreSQL에서 어레이를 결합하려면 어떻게해야합니까?

2025-03-04에 게시되었습니다
검색:877

How Can I Combine Arrays in PostgreSQL?

단일 차원 출력

SELECT array_agg(ARRAY[a, b]) AS ab
FROM unnest('{a,b,c}'::text[]) AS a, unnest('{d,e,f}'::text[]) AS b;

, arting you you you you you you you you you you you you you you worly you you you는 zipping arrays. 다중 배열을 하나의 고차원 배열로 연결합니다. 이 기능은 배열 조합 작업을 단순화하여 사용자 정의 집계 기능의 필요성을 제거합니다.

AB로 Array_Agg (Array [A, B])를 선택합니다. Unnest ( '{a, b, c}':: text [])에서 a, a, as, as b;

SELECT array_agg(ARRAY[a, b]) AS ab
FROM unnest('{a,b,c}'::text[]) AS a, unnest('{d,e,f}'::text[]) AS b;
postgresql 9.4

SELECT array_agg(ARRAY[a, b]) AS ab
FROM unnest('{a,b,c}'::text[]) AS a, unnest('{d,e,f}'::text[]) AS b;
SELECT array_agg(ARRAY[a, b]) AS ab
FROM unnest('{a,b,c}'::text[]) AS a, unnest('{d,e,f}'::text[]) AS b;

에서 uneest (&&]

를 사용하여 Unnest를 사용합니다. 에서 Unnest에서 ( '{a, b, c}':: text [], '{d, e, f}':: text []) TMP (a, b);
SELECT array_agg(ARRAY[a, b]) AS ab
FROM unnest('{a,b,c}'::text[]) AS a, unnest('{d,e,f}'::text[]) AS b;
다차원 출력을위한 Zipping Arrays

배열을 다차원 배열로 결합 해야하는 경우 사용자 정의 집계 기능이 필요합니다. anyArray Language SQL을 설정합니다 $ func $ 배열 선택 [배열 [A, B]] Unnest1 (a, b)로서 Unnest ($ 1); $ func $;

array_agg_mult (array [array [a, b]])를 AB로 선택하십시오 Unnest ( '{a, b, c}':: text []))에서 a, a, unnest ( '{d, e, f}':: text []) as b;
  • 일반화 된 zip 함수
  • anyArray Language SQL을 설정합니다 $ func $ array_agg_mult (array [array [a, b]])를 선택하십시오. Unnest ($ 1)에서 Unnest1 (a, b)로부터 Unnest2 (A, B)로 Unnest ($ 2)에 가입하십시오. 사실에; $ func $;
사용 시나리오

이 기사에 제시된 예제는 배열을 결합하기위한 다양한 시나리오를 보여줍니다 :

How Can I Combine Arrays in PostgreSQL?
간단한 Zipping :

배열 세트의 요소 쌍으로 결합합니다. output). 배열.

결론

PostgreSQL은 버전과 원하는 출력 형식에 따라 배열을 결합하기위한 여러 옵션을 제공합니다. 이 기사는 사용 가능한 접근 방식을 포괄적으로 다루었으므로 특정 요구에 가장 적합한 방법을 선택할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3