Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Nyahpaut Jadual dalam BigQuery untuk Mengubah Baris kepada Lajur?

Bagaimanakah Saya Boleh Nyahpaut Jadual dalam BigQuery untuk Mengubah Baris kepada Lajur?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-28 12:11:10271semak imbas

How Can I Unpivot Tables in BigQuery to Transform Rows into Columns?

Menyahpivoting Jadual dalam BigQuery

Menstruktur semula jadual untuk mengubah baris menjadi lajur ialah tugas manipulasi data yang biasa. Dalam BigQuery, proses ini dikenali sebagai unpivoting.

Pernyataan Masalah:

Andaikan anda mempunyai jadual dengan data yang disusun dalam format yang serupa dengan yang berikut:

masukkan perihalan imej here

Walau bagaimanapun, jadual output yang anda kehendaki hendaklah distrukturkan seperti ini:

masukkan penerangan imej here

Penyelesaian:

Untuk mencapai transformasi ini, anda boleh menggunakan operator UNPIVOT dalam BigQuery. Operator ini memutarkan baris ke dalam lajur, membolehkan anda membentuk semula jadual anda seperti yang diperlukan.

Penyelesaian Kemas Kini (2021):

BigQuery telah memperkenalkan operator UNPIVOT khusus untuk memudahkan perkara ini proses. Menggunakan UNPIVOT boleh diwakili seperti berikut:

SELECT
  product,
  sales,
  quarter
FROM (
  SELECT
    product,
    UNNEST([Q1, Q2, Q3, Q4]) AS sales,
    UNNEST(["Q1", "Q2", "Q3", "Q4"]) AS quarter
  FROM UNNEST(sales_table) AS sales_table
)

Pertanyaan ini menyahpangsi lajur Q1, S2, Q3, Q4 ke dalam jualan lajur dan suku baharu. Operator UNNEST digunakan untuk mengekstrak nilai daripada medan tatasusunan bersarang sales_table.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Nyahpaut Jadual dalam BigQuery untuk Mengubah Baris kepada Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn