Úvod
když načtete informace z tabulky PostgreSQL, můžete chtít, aby vaše výsledky byly vráceny v určitém pořadí. Klíčová slova PostgreSQL ORDER BY
umožňují třídit záznamy z databáze ve sloupci podle vašeho výběru. Můžete také určit, zda chcete, aby vaše výsledky byly seřazeny vzestupně nebo sestupně. V tomto článku vám ukážeme, jak třídit záznamy a vrátit je v sestupném pořadí pomocí pořadí Postgres podle klíčových slov DESC.
Předpoklady
Budete muset ujistěte se, že následující předpoklady jsou na místě dříve, než budete pokračovat v tomto návodu:
- PostgreSQL musí být nainstalována na vašem počítači, aby bylo možné sledovat spolu s naší PostgreSQL ORDER BY DESC příklady.
- měli byste mít nějaké základní znalosti PostgreSQL, abyste získali co nejvíce z tohoto článku.
Postgres sestupně
Začněme tím, že se podíváme na základní syntaxi klíčových slov ORDER BY
s klauzulí DESC
:
1
|
SELECT * FROM TABLE_NAME POŘADÍ PODLE jméno_sloupce DESC
|
POZNÁMKA: Pokud byste chtěli mít své výsledky se vrátil ve vzestupném pořadí, místo toho, jen nahradit DESC
klíčové slovo ASC
.
Postgres „seřadit PODLE“ příklad:
Než budeme pokračovat v našem příkladu, pojďme vytvořit tabulku a název „richest_countries“:
1
2 3 4 5 6 |
VYTVOŘIT TABULKU richest_countries(
id SERIAL PRIMARY KEY, země VARCHAR(30), kontinentu VARCHAR(30), gdp_per_capita ČÍSELNÉ ); |
POZNÁMKA: ujistěte se, že vytvoření databáze pro váš vzorek výše uvedené tabulky před spuštěním CREATE TABLE
prohlášení je uvedeno výše. Jakmile vytvoříte databázi, můžete se k ní připojit pomocí příkazu \c
v psql a následovaného názvem databáze.
nyní vložíme do tabulky několik záznamů. To nám poskytne některé ukázkové údaje používat v našich příkladech:
1
2 3 4 5 6 7 8 9 10 |
VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Austrálie‘, ‚Austrálie‘, ‚58824‘);
VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) HODNOTY („Singapur“, ‚Asie‘, ‚62690‘); VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Dánsko‘, ‚Evropa‘, ‚63434‘); VLOŽIT DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Spojené Státy Americké‘, ‚Severní Americe‘, ‚64906‘); VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) HODNOTY („Katar“, ‚Asie‘, ‚65062‘); VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Island‘, ‚Evropa‘, ‚78181‘); VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Irsko“, „Evropa‘, ‚81477‘); VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Swirzerland‘, ‚Evropa‘, ‚83832‘); VLOŽIT DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Norsko‘, ‚Evropa‘, ‚86362‘); VLOŽTE DO richest_countries (země, kontinentu, gdp_per_capita) VALUES (‚Lucembursko‘, ‚Evropa‘, ‚119719‘); |
Postgres seřadit podle prohlášení pomocí „seřadit PODLE“
V následujícím příkladu budeme zobrazovat nejbohatších zemí a třídit je podle jejich HDP na obyvatele, vrací záznamy v sestupném pořadí:
1
2 3 |
VYBERTE zemi, kontinentu, OBSAZENÍ(gdp_per_capita JAKO PENÍZE)
Z richest_countries ORDER BY gdp_per_capita DESC; |
Všimněte si, že výše uvedený SQL používá CAST
ve spojení s AS MONEY
: Tato možnost vrátí gdp_per_capita
sloupec hodnot v USD měně formátu. Dotaz pak třídí záznamy Postgres od nejvyššího HDP na obyvatele k nejmenšímu:
1
2 3 4 5 6 7 8 9 10 11 12 13 |
země | kontinent | gdp_per_capita
————————–+—————+—————- Lucembursko | Evropa | $119,719.00 Norsko | Evropa | $86,362.00 Swirzerland | Evropa | $83,832.00 Irsko | Evropa | $81,477.00 Islandu | Evropa | $78,181.00 Katar | Asie | $65,062.00 Spojené Státy Americké | Severní Amerika | $64,906.00 Dánsko | Evropa | $63,434.00 Singapur | Asie | $62,690.00 Austrálie | Austrálie| $58,824.00 (10 ŘÁDKY) |
Třídění záznamů v sestupném pořadí s limitem
V dalším příkladu budeme třídit nejbohatších zemí, ale tentokrát budeme omezit počet záznamů, které budou vráceny:
1
2 3 4 |
VYBERTE zemi, kontinentu, OBSAZENÍ(gdp_per_capita JAKO PENÍZE)
Z richest_countries ORDER BY gdp_per_capita DESC LIMIT 5; |
Tento výkaz by měl vrátit následující:
1
2 3 4 5 6 7 8 |
země | kontinent | gdp_per_capita
————-+———–+—————- Lucembursko | Evropa | $119,719.00 Norsko | Evropa | $86,362.00 Swirzerland | Evropa | $83,832.00 Irsko | Evropa | $81,477.00 Islandu | Evropa | $78,181.00 (5 ŘÁDKŮ) |
Seřadit podle PostgreSQL prohlášení pomocí několika sloupců
Při použití ORDER BY
klíčová slova, můžete třídit záznamy na více než jeden sloupec. Pro tento příklad, budeme třídit nejbohatší země podle kontinentu a pak třídit podle HDP na obyvatele v sestupném pořadí:
1
2 3 |
VYBERTE zemi, kontinentu, OBSAZENÍ(gdp_per_capita JAKO PENÍZE)
Z richest_countries POŘADÍ PODLE kontinentu, gdp_per_capita DESC; |
Výše uvedený SQL příkaz vrátí následující tabulce:
1
2 3 4 5 6 7 8 9 10 11 12 13 |
země | kontinent | gdp_per_capita
————————–+—————+—————- Katar | Asie | $65,062.00 Singapur | Asie | $62,690.00 Austrálie | Austrálie | $58,824.00 Lucembursko | Evropa | $119,719.00 Norsko | Evropa | $86,362.00 Swirzerland | Evropa | $83,832.00 Irsko | Evropa | $81,477.00 Islandu | Evropa | $78,181.00 Dánsko | Evropa | $63,434.00 Spojené Státy Americké | Severní Amerika| $64,906.00 (10 ŘÁDKY) |
Závěr
Při spuštění PostgreSQL dotaz, je schopen třídit vrácené záznamy dělá své výsledky čitelnější a pomůže vám získat lepší poznatky z vaše data. Klíčová slova ORDER BY
vám umožňují určit sloupec, na kterém chcete třídit výsledky; přidání klauzule DESC
usnadňuje řazení v sestupném pořadí. V tomto článku jsme vysvětlili, jak použít pořadí Postgres podle klíčových slov DESC k třídění výsledků dotazu. S našimi příklady, které vám pomohou začít, budete moci tato klíčová slova využít ve svých vlastních dotazech PostgreSQL.