>데이터 베이스 >MySQL 튜토리얼 >BigQuery의 UNPIVOT 연산자는 표 형식 데이터를 어떻게 재구성할 수 있나요?

BigQuery의 UNPIVOT 연산자는 표 형식 데이터를 어떻게 재구성할 수 있나요?

Patricia Arquette
Patricia Arquette원래의
2024-12-20 01:48:09406검색

How Can BigQuery's UNPIVOT Operator Restructure Tabular Data?

UNPIVOT 연산자를 사용하여 BigQuery에서 데이터 전치

테이블 형식의 데이터를 보다 유연하고 사용하기 쉬운 형식으로 재구성해야 하는 경우가 많습니다. BigQuery에서 UNPIVOT 연산자는 이 변환을 위한 강력한 솔루션을 제공합니다.

다음 예를 고려하세요.

원래 테이블 구조:

product Q1 Q2 Q3 Q4
Kale 51 23 45 3
Apple 77 0 25 2

원하는 테이블 구조:

product sales quarter
Kale 51 Q1
Kale 23 Q2
Kale 45 Q3
Kale 3 Q4
Apple 77 Q1
Apple 0 Q2
Apple 25 Q3
Apple 2 Q4

UNPIVOT을 사용한 SQL 쿼리:

SELECT product, value AS sales, OFFSET AS quarter
FROM UNNEST(FLATTEN(
  ARRAY(
    STRUCT('Q1' AS OFFSET, Q1 AS value),
    STRUCT('Q2' AS OFFSET, Q2 AS value),
    STRUCT('Q3' AS OFFSET, Q3 AS value),
    STRUCT('Q4' AS OFFSET, Q4 AS value)
  )
)) AS UNNESTED
ORDER BY product, quarter;

이 쿼리는 ARRAY 및 STRUCT 함수를 사용하여 원본 테이블의 각 행. 그런 다음 FLATTEN 함수를 사용하여 배열의 각 구조체에서 구조체 필드(판매 및 분기)를 추출합니다. 마지막으로 UNNEST 연산자를 사용하여 ARRAY에서 개별 값을 추출합니다.

결과 테이블은 제품, 매출 및 분기 열이 포함된 원하는 형식이 됩니다.

위 내용은 BigQuery의 UNPIVOT 연산자는 표 형식 데이터를 어떻게 재구성할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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