Otimização usando CTEs
CTEs também ajudam você a otimizar consultas ao realizar computações, como agregações, antes de trabalhar com os dados na consulta principal.
Por exemplo, você quer encontrar o maior número de pagamentos por quantidade de itens do pedido. Este exercício vai mostrar como fazer isso de forma eficiente com uma CTE.
Este exercício faz parte do curso
Introdução ao BigQuery
Instruções do exercício
- Adicione as funções de agregação corretas na subconsulta e na consulta principal.
- Use
ARRAY_LENGTHpara encontrar o número de itens em cada pedido usando a colunaorder_itemsduas vezes na consulta principal.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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)