НачатьНачать бесплатно

RANK и LEAD/LAG

Функция ранжирования позволяет упорядочить данные в нужном порядке, а функции LAG и LEAD — просматривать данные вперёд или назад в рамках окна запроса. Эти инструменты помогают создавать наглядные отчёты и реализовывать сложные аналитические вычисления в случае с LAG/LEAD. В этом упражнении вы применёте их на практике с нашими данными.

Это упражнение является частью курса

Введение в BigQuery

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- Complete the query to order customers by the total amount spent

-- First, write a CTE to group customers and find their total amount spent
WITH orders AS (
  SELECT
  -- Add the correct columns and aggregate functions
  ___,
  SUM(___) as all_items
  FROM ecommerce.ecomm_orders o, UNNEST(o.order_items) items
  JOIN ecommerce.ecomm_order_details od USING (order_id)
  GROUP BY od.customer_id
)

SELECT
	customer_id,
	all_items,
-- Fill in the RANK window function and OVER clause
RANK() ___(ORDER BY ___ DESC)
FROM orders
ORDER BY all_items DESC;
Редактировать и запускать код