LoslegenKostenlos loslegen

Mit CTEs optimieren

CTEs helfen dir auch dabei, Abfragen zu optimieren, indem sie Berechnungen wie Aggregationen erledigen, bevor in der Hauptabfrage mit den Daten gearbeitet wird.

Zum Beispiel möchtest du die höchste Anzahl an Zahlungen nach der Anzahl der Artikel pro Bestellung finden. Diese Übung zeigt dir, wie du das mit einer CTE effizient umsetzt.

Diese Übung ist Teil des Kurses

Einführung in BigQuery

Kurs anzeigen

Anleitung zur Übung

  • Füge die richtigen Aggregatfunktionen in die Unterabfrage und die Hauptabfrage ein.
  • Verwende ARRAY_LENGTH, um die Anzahl der Artikel in jeder Bestellung zu ermitteln, und nutze dazu die Spalte order_items zweimal in der Hauptabfrage.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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)
Code bearbeiten und ausführen