Optimasi menggunakan CTE
CTE juga membantu Anda mengoptimalkan kueri dengan menangani komputasi seperti agregasi sebelum bekerja dengan data di kueri utama.
Sebagai contoh, Anda ingin mencari jumlah pembayaran tertinggi berdasarkan jumlah item per pesanan. Latihan ini akan menunjukkan cara melakukannya secara efisien dengan CTE.
Latihan ini merupakan bagian dari kursus
Pengantar BigQuery
Instruksi latihan
- Tambahkan fungsi agregat yang benar di subkueri dan kueri utama.
- Gunakan
ARRAY_LENGTHuntuk mencari jumlah item di setiap pesanan dengan menggunakan kolomorder_itemsdua kali di kueri utama.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
WITH payments AS (
SELECT
-- Use the correct aggregate to find the highest number of payments
___(payment_sequential) AS num_payments,
order_id
FROM ecommerce.ecomm_payments
-- Group the results by order
GROUP BY ___)
SELECT
-- Add the correct function to find the length or number of order items
___(o.order_items) AS num_items,
MAX(p.num_payments) AS max_payments
FROM ecommerce.ecomm_orders o
JOIN payments p
-- Add the correct keyword to join using the same column
___ (order_id)
-- Add the correct function to find the length or number of order items
GROUP BY ___(o.order_items)