Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Nyahpaut Data dalam BigQuery?

Bagaimana untuk Nyahpaut Data dalam BigQuery?

Susan Sarandon
Lepaskan: 2024-12-23 03:19:09
asal
948 orang telah melayarinya

How to Unpivot Data in BigQuery?

Cara Mengubah Data daripada Struktur Dipangsi kepada Struktur Tidak Dipangsi dalam BigQuery

Dalam BigQuery, anda dihadapkan dengan cabaran untuk mengubah jadual berpivot ke dalam format tidak berpivot. Ini melibatkan pemindahan data kepada perwakilan yang lebih jadual. Untuk mencapai matlamat ini, pertimbangkan langkah berikut:

Menggunakan Operator UNPIVOT (Disyorkan)

BigQuery kini menawarkan pengendali UNPIVOT khusus yang memudahkan transformasi ini. Operator ini membenarkan anda untuk menentukan lajur pangsi untuk diputar (cth., Q1, Q2, Q3, Q4) dan lajur yang terhasil (cth., jualan, suku).

SQL Syntax:

SELECT product, UNPIVOT(value FOR quarter IN (Q1, Q2, Q3, Q4)) AS sales_quarter
FROM pivoted_table
Salin selepas log masuk

Menggunakan Nested Pertanyaan

Sebelum pengenalan pengendali UNPIVOT, pengguna BigQuery boleh mencapai unpivoting menggunakan pertanyaan bersarang:

SQL Syntax:

SELECT product,
  (SELECT value FROM UNNEST(SAFE_CAST(STRUCT(NULL AS name, Q1 AS "value") AS STRUCT<name STRING, value STRING>))) AS Q1,
  (SELECT value FROM UNNEST(SAFE_CAST(STRUCT(NULL AS name, Q2 AS "value") AS STRUCT<name STRING, value STRING>))) AS Q2,
  (SELECT value FROM UNNEST(SAFE_CAST(STRUCT(NULL AS name, Q3 AS "value") AS STRUCT<name STRING, value STRING>))) AS Q3,
  (SELECT value FROM UNNEST(SAFE_CAST(STRUCT(NULL AS name, Q4 AS "value") AS STRUCT<name STRING, value STRING>))) AS Q4
FROM pivoted_table
Salin selepas log masuk

Contoh Data Penukaran

Contoh berikut akan menukar jadual terpivot:

product | Q1 | Q2 | Q3 | Q4
-------------------------------
Kale    | 51 | 23 | 45 | 3
Apple   | 77 | 0  | 25 | 2
Salin selepas log masuk

Ke dalam jadual tidak berpivot:

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
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Nyahpaut Data dalam BigQuery?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan