>데이터 베이스 >MySQL 튜토리얼 >`unnest()`를 사용하여 PostgreSQL에서 테이블(열에서 행으로)을 어떻게 전치할 수 있습니까?

`unnest()`를 사용하여 PostgreSQL에서 테이블(열에서 행으로)을 어떻게 전치할 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2025-01-04 08:34:45140검색

How Can I Transpose Tables (Columns to Rows) in PostgreSQL Using `unnest()`?

테이블 전치: PostgreSQL에서 열을 행으로 변환

열을 행으로 회전하여 테이블 형식 데이터를 변환하는 것은 데이터 조작에서 중요한 작업이 될 수 있습니다. PostgreSQL에는 이러한 전치를 효과적으로 달성하는 방법이 있습니다. 그러한 방법 중 하나는 unnest() 함수를 활용하는 것입니다.

unnest()를 사용한 솔루션

테이블을 전치하려면 unnest()와 ARRAY 집계를 조합하여 사용할 수 있습니다. 다음 쿼리는 해당 기술을 보여줍니다.

SELECT
   unnest(array['Sl.no', 'username', 'Designation','salary']) AS "Columns",
   unnest(array[Sl.no, username, value3Count,salary]) AS "Values"
FROM view_name
ORDER BY "Columns"

설명

  • unnest() 함수는 배열을 개별 요소로 압축 해제합니다. 이 경우 원본 테이블에서 열 이름과 해당 값을 추출합니다.
  • ARRAY 집계는 각 행의 열 이름과 값을 보관하는 배열을 생성합니다.
  • ORDER BY 절은 정렬합니다. 전치된 테이블에 원하는 결과가 있는지 확인하기 위해 열 이름별 결과 구조.

출력:

쿼리는 다음 형식의 전치된 테이블을 반환합니다.

Columns Values
Sl.no 1
username A
Designation XYZ
salary 10000
Sl.no 2
username B
Designation RTS
salary 50000
Sl.no 3
username C
Designation QWE
salary 20000
Sl.no 4
username D
Designation HGD
salary 34343

참고: 원본 테이블 쿼리의 이름은 실제 테이블 이름에 따라 다를 수 있습니다.

위 내용은 `unnest()`를 사용하여 PostgreSQL에서 테이블(열에서 행으로)을 어떻게 전치할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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