Kategorie: Fensterfunktionen
ROW_NUMBER
ROW_NUMBER nummeriert die Zeilen einer Partition fortlaufend nach der Sortierung der OVER-Klausel.
Syntax
ROW_NUMBER() OVER windowBesonderheiten in AMC
- Die Funktion braucht keine Argumente, aber die OVER-Klausel mit ORDER BY.
- Anders als RANK und DENSE_RANK vergibt ROW_NUMBER auch bei gleichen Werten unterschiedliche Nummern.
Beispiel
Die fünf klickstärksten Suchbegriffe je Kampagne.
WITH by_term AS (
SELECT
campaign,
customer_search_term,
SUM(clicks) AS clicks
FROM
sponsored_ads_traffic
GROUP BY
1,
2
),
ranked AS (
SELECT
campaign,
customer_search_term,
clicks,
ROW_NUMBER() OVER (PARTITION BY campaign ORDER BY clicks DESC) AS rn
FROM
by_term
)
SELECT
campaign,
customer_search_term,
clicks
FROM
ranked
WHERE
rn <= 5 Gegen das AMC-Schema geprüft, nicht auf einer AMC-Instanz ausgeführt.