>데이터 베이스 >MySQL 튜토리얼 >열 값을 미리 알지 않고도 BigQuery에서 데이터를 동적으로 피벗하려면 어떻게 해야 하나요?

열 값을 미리 알지 않고도 BigQuery에서 데이터를 동적으로 피벗하려면 어떻게 해야 하나요?

Barbara Streisand
Barbara Streisand원래의
2025-01-04 17:03:41265검색

How Can I Dynamically Pivot Data in BigQuery Without Knowing the Column Values in Advance?

BigQuery에서 동적으로 PIVOT 사용

BigQuery의 새로운 PIVOT 함수를 사용하면 사용자는 그룹의 여러 값을 별도의 값으로 요약하여 데이터를 변환할 수 있습니다. 열.

문제:

실제 시나리오에서는 분기 값을 미리 알 수 없을 수도 있습니다. 하드 코딩된 분기 값을 사용하여 정적 PIVOT 쿼리를 실행하는 것은 불가능합니다.

해결책:

알 수 없는 분기 값을 동적으로 처리하려면 다음 접근 방식을 사용할 수 있습니다.

  1. 고유한 분기를 얻기 위한 하위 쿼리 만들기 값:
(SELECT DISTINCT quarter FROM `project.dataset.Produce` ORDER BY quarter)
  1. STRING_AGG를 사용하여 동적 피벗 열 목록 생성:
STRING_AGG(quarter, '", "')
  1. 즉시 실행하여 피벗 쿼리 작성 동적으로:
EXECUTE IMMEDIATE (
  'SELECT * FROM (SELECT * FROM `project.dataset.Produce`)
  PIVOT(SUM(sales) FOR quarter IN (' || STRING_AGG(quarter, '", "') || '"))'
)

고유한 분기 값을 기반으로 피벗 열 목록을 동적으로 작성함으로써 이 방법을 사용하면 분기 범위를 미리 결정할 필요 없이 유연한 PIVOT 작업이 가능합니다.

위 내용은 열 값을 미리 알지 않고도 BigQuery에서 데이터를 동적으로 피벗하려면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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