PARTITION BY criterion
Teil des Abschnitts Grundlagen der SQL-Journey von Coddy. Lektion 59 von 72.
Eine weitere Option für die OVER ()-Klausel ist PARTITION BY.
Damit können wir die Zeilen für jede Gruppe separat nummerieren
Zum Beispiel:
| id | type |
| 132 | t1 |
| 52 | t2 |
| 92 | t1 |
| 154 | t3 |
| 198 | t1 |
SELECT id, type, ROW_NUMBER() OVER (PARTITION BY type ORDER BY id) as row_num
FROM table1Dadurch wird eine Spalte erzeugt, die jeden type innerhalb seiner eigenen Gruppe nummeriert:
| id | type | row_num |
| 132 | t1 | 1 |
| 52 | t2 | 1 |
| 92 | t1 | 1 |
| 154 | t3 | 1 |
| 198 | t1 | 3 |
id 92 hat row_num 1, weil es die kleinste id in type t1 ist.
Hinweis: ROW_NUMBER() erfordert eine ORDER BY-Klausel innerhalb von OVER(), um zu bestimmen, wie die Zeilen innerhalb jeder Partition nummeriert werden sollen.
Wir können sogar mehrere Spalten innerhalb von PARTITION BY angeben:
ROW_NUMBER() OVER (PARTITION BY type, hue ORDER BY id)Aufgabe
EinfachVerfügbare Tabellen und Spalten:
<strong>doors</strong>:<strong>id</strong>,<strong>publication_year</strong><strong>doors_specs</strong>:<strong>id</strong>,<strong>country</strong>,<strong>color</strong>
Eine Fabrik stellt Türen her. Sie muss die Türen für jede Kombination aus country und color nummerieren, deren publication_year kleiner als 2000 ist. Nenne diese Spalte row_num.
Die Türen sollen innerhalb jeder Gruppe in aufsteigender Reihenfolge nach ihrer id nummeriert werden. Türen ohne Spezifikationen sollen ignoriert werden. Sortiere das Endergebnis in aufsteigender Reihenfolge nach der id.
Probier es selbst
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function8Statistics
Built-In Aggregate Part 1Built-In Aggregate Part 2Grouping Part 1Grouping Part 2Subqueries Part 1Subqueries Part 2Recap - Total Gain ShopRecap - Scooter ShopRecap - Coffee Shop11Window Functions part 1
ROW_NUMBER functionORDER BY criterionPARTITION BY criterionPARTITION & ORDERLEAD & LAG FunctionsRecap - LEAD & LAGRecap - PicturesRecap - Boxes3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columnsÜbe selbstständig: SQL-Playground