Optimizarea interogărilor cu CTE-uri
CTE-urile te ajută să optimizezi interogările, gestionând calcule precum agregările înainte de a prelucra datele în interogarea principală.
De exemplu, dacă vrei să identifici cel mai mare număr de plăți în funcție de numărul de articole dintr-o comandă, acest exercițiu îți arată cum să faci asta eficient cu un CTE.
Acest exercițiu face parte din cursul
Introducere în BigQuery
Instrucțiuni pentru exercițiu
- Adaugă funcțiile de agregare corecte în subinterogare și în interogarea principală.
- Folosește
ARRAY_LENGTHpentru a determina numărul de articole din fiecare comandă, utilizând coloanaorder_itemsde două ori în interogarea principală.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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)