Kryterium PARTITION BY
Część sekcji Podstawy ścieżki SQL w Coddy. Lekcja 59 z 72.
Inną opcją dla klauzuli OVER () jest PARTITION BY
Pozwala nam osobno numerować wiersze w każdej grupie
Na przykład:
| 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 table1To utworzy kolumnę, która numeruje wiersze każdego typu osobno, w kolejności id (poniżej wynik jest pogrupowany według typu):
| id | type | row_num |
| 92 | t1 | 1 |
| 132 | t1 | 2 |
| 198 | t1 | 3 |
| 52 | t2 | 1 |
| 154 | t3 | 1 |
id 92 ma row_num równe 1, ponieważ jest najmniejszym id w type t1.
Uwaga: ORDER BY wewnątrz OVER() jest opcjonalne. Bez niego wiersze każdej partycji nadal otrzymują numery, ale kolejność nie jest gwarantowana.
Możemy nawet określić wiele kolumn w klauzuli PARTITION BY:
ROW_NUMBER() OVER (PARTITION BY type, hue ORDER BY id)Wyzwanie
ŁatwyDostępne tabele i kolumny:
doors:id,publication_yeardoors_specs:id,country,color
Fabryka produkuje drzwi. Musi ponumerować drzwi dla każdej kombinacji country i color, których publication_year jest mniejszy niż 2000. Nazwij tę kolumnę row_num.
Drzwi powinny być numerowane w każdej grupie w kolejności rosnącej według ich id. Drzwi bez specyfikacji powinny zostać pominięte. Posortuj wynik końcowy w kolejności rosnącej według id.
Spróbuj swoich sił
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Więcej słów kluczowych
Słowo kluczowe INSłowo kluczowe BETWEENSłowo kluczowe LIKESłowo kluczowe ASPowtórzenie – modele telefonów komórkowych2Instrukcje warunkowe
Podstawy instrukcji warunkowychSłowo kluczowe ANDSłowo kluczowe ORSłowo kluczowe NOTŁączenie wielu warunkówNawiasyWartości logiczne8Statystyka
Wbudowane funkcje agregujące — część 1Wbudowane funkcje agregujące — część 2Grupowanie — część 1Grupowanie — część 2Podzapytania — część 1Podzapytania — część 2Powtórzenie — sklep z całkowitym zyskiemPowtórzenie — sklep ze skuteramiPowtórzenie — kawiarnia11Funkcje okna, część 1
Funkcja ROW_NUMBERKryterium ORDER BYKryterium PARTITION BYPARTITION i ORDERFunkcje LEAD i LAGPowtórka — LEAD i LAGPowtórka — obrazkiPowtórka — pudełka3Określony format zwracanych danych
Wartości nullSortowanie wyników — część 1Sortowanie wyników — część 2Powtórzenie — firma zajmująca się cyberbezpieczeństwemOgraniczanie liczby rekordówPowtórzenie — fabryka pojazdów6Wyzwania na początek
Powtórka – wybory parlamentarnePowtórka – zatrzymanie przestępcy przez policjęPowtórka – pojemnik na napój w barzePowtórka – inżynier: nowe kolumnyPoćwicz samodzielnie: Edytor online SQL