ComeçarComece de graça

Filtrando dados com CTEs

Uma das formas mais eficazes de usar uma CTE é filtrar os dados dentro da CTE antes de usá-los mais adiante na consulta. Isso reduz o custo geral da consulta, pois traz menos dados para a consulta final. Esta consulta vai nos ajudar a encontrar o status dos pedidos que têm itens com preço acima de US$ 150.

Este exercício faz parte do curso

Introdução ao BigQuery

Ver curso

Instruções do exercício

  • Crie uma nova CTE orders para pedidos com preço acima de US$ 150, fazendo UNNEST de order_items para encontrar a coluna price.
  • Faça JOIN nos resultados da CTE com o conjunto de dados ecomm_order_details para encontrar a contagem de order_status e agregá-los usando COUNT nos pedidos de cada status.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

-- Add the correct items to finish our filtered CTE

-- Create a new CTE with the name orders
WITH ___ AS (
  SELECT order_id
  -- Add the correct column for the order item details
  FROM ecommerce.ecomm_orders, UNNEST(___) items
  -- Fill in the correct column for the item price 
  WHERE items.___ > 150
)

SELECT
	-- Aggregate to find the total number of orders
	___(order_id),
	-- Add the column for the status of the order
	___
FROM ecommerce.ecomm_order_details od
JOIN orders o USING (order_id)
GROUP BY order_status
Editar e executar o código