Innledning
når du henter informasjon Fra Et PostgreSQL-bord, vil du kanskje at resultatene skal returneres i en bestemt rekkefølge. PostgreSQL ORDER BY
søkeord lar deg sortere poster fra databasen på kolonnen du ønsker. Du kan også angi om du vil at resultatene skal sorteres i stigende eller synkende rekkefølge. I denne artikkelen viser vi deg hvordan du sorterer poster og returnerer dem i synkende rekkefølge ved Hjelp Av Postgres ORDER BY DESC keywords.
Forutsetninger
du må sørge for at følgende forutsetninger er på plass før du fortsetter med denne opplæringen:
- PostgreSQL må installeres på datamaskinen din for å følge Med vår PostgreSQL ORDER BY DESC eksempler.
- Du bør ha noen grunnleggende kunnskaper Om PostgreSQL for å få mest mulig ut av denne artikkelen.
Postgres REKKEFØLGE ved synkende
La oss begynne med å se på den grunnleggende syntaksen til ORDER BY
søkeordene med DESC
klausulen:
1
|
VELG * FRA TABLE_NAME REKKEFØLGE etter column_name SYNKENDE
|
MERK: hvis du vil at resultatene skal returneres i stigende rekkefølge i stedet, erstatter du bare DESC
– søkeordet med ASC
.
Postgres ‘ORDER BY’ eksempel
Før vi fortsetter med vårt eksempel, la oss lage et bord og nevne det «richest_countries»:
1
2 3 4 5 6 |
OPPRETT tabell richest_countries (
ID SERIELL PRIMÆRNØKKEL, land VARCHAR(30), kontinent VARCHAR (30), gdp_per_capita NUMERISK ); |
MERK: sørg for å opprette en database for eksempeltabellen ovenfor før du utfører CREATE TABLE
– setningen vist ovenfor. Når du har opprettet databasen, kan du bruke kommandoen \c
i psql, etterfulgt av databasenavnet, for å koble til den.
la Oss nå sette inn noen poster i tabellen. Dette vil gi oss noen eksempeldata å bruke i våre eksempler:
1
2 3 4 5 6 7 8 9 10 |
SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Australia’, ‘Australia’, ‘58824’);
SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Singapore’, ‘Asia’, ‘62690’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Danmark’, ‘Europa’, ‘63434’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Usa’, ‘Nord-Amerika’, ‘64906’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Qatar’, ‘Asia’, ‘65062’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Island’, ‘Europa’, ‘78181’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Irland’, ‘Europa’, ‘81477’); SETT inn i richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Swirzerland’, ‘Europa’, ‘83832’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Norge’, ‘Europa’, ‘86362’); SETT inn richest_countries (land, kontinent, gdp_per_capita) VERDIER (‘Luxembourg’, ‘Europa’, ‘119719’); |
Postgres sorter etter setning ved hjelp AV ‘ORDER BY’
i følgende eksempel vil vi vise de rikeste landene og sortere DEM ETTER BNP per innbygger, og returnere postene i synkende rekkefølge:
1
2 3 |
VELG land,kontinent, CAST(gdp_per_capita SOM PENGER)
fra richest_countries BESTILL etter gdp_per_capita SYNKENDE; |
Legg Merke til at SQL-setningen ovenfor bruker CAST
i forbindelse med AS MONEY
: dette returnerer kolonneverdiene gdp_per_capita
I ET USD-valutaformat. Spørringen sorterer Deretter Postgres-postene fra høyeste BNP per innbygger til minst:
1
2 3 4 5 6 7 8 9 10 11 12 13 |
land | kontinent | dnp_per_capita
————————–+—————+—————- Luxembourg | Europa | $119,719.00 Norge | Europa | $86,362.00 Sveits | Europa | $83,832.00 Irland | Europa | $81,477.00 Island | Europa | $78,181.00 Qatar | Asia | $65,062.00 Forente Stater Amerika | Nord-Amerika | $64,906.00 Danmark | Europa | $63,434.00 Singapore | Asia / $62,690.00 Australia / Australia| $58,824.00 (10 RADER) |
Sortere poster i synkende rekkefølge med limit
i vårt neste eksempel sorterer vi de rikeste landene, men denne gangen begrenser vi antall poster som returneres:
1
2 3 4 |
VELG land, kontinent, CAST(gdp_per_capita SOM PENGER)
fra richest_countries BESTILL etter gdp_per_capita DESC GRENSE 5; |
denne erklæringen skal returnere følgende:
1
2 3 4 5 6 7 8 |
land | kontinent | dnp_per_capita
————-+———–+—————- Luxembourg | Europa | $119,719. 00 Norge | Europa | $86,362. 00 Sveits | Europa | $83,832.00 Irland | Europa / $81,477.00 Island | Europa | $78,181.00 (5 RADER) |
Sorter Etter PostgreSQL-setning ved hjelp av flere kolonner
når du bruker ORDER BY
søkeord, kan du sortere poster på mer enn en kolonne. I dette eksemplet sorterer vi de rikeste landene etter kontinent og sorterer DERETTER ETTER BNP per innbygger i synkende rekkefølge:
1
2 3 |
VELG land,kontinent, CAST(gdp_per_capita SOM PENGER)
fra richest_countries BESTILL etter kontinent, gdp_per_capita SYNKENDE; |
OVENNEVNTE SQL-setning returnerer følgende tabell:
1
2 3 4 5 6 7 8 9 10 11 12 13 |
land | kontinent | dnp_per_capita
————————–+—————+—————- Qatar | Asia | $65,062.00 Singapore | Asia | $62,690.00 Australia | Australia | $58,824.00 Luxembourg | Europa | $119,719.00 Norge | Europa | $86,362.00 Sveits | Europa | $83,832.00 Irland | Europa | $81,477.00 Island | Europa | $78,181.00 Danmark | Europa | $63,434.00 Usa / Nord-Amerika| $64,906.00 (10 RADER) |
Konklusjon
når Du utfører En PostgreSQL-spørring, kan du sortere de returnerte postene, slik at resultatene dine blir mer lesbare og hjelper deg med å få bedre innsikt fra dataene dine. Med ORDER BY
– søkeordene kan du angi en kolonne for å sortere resultatene dine. ved å legge til DESC
– klausulen er det enkelt å sortere i synkende rekkefølge. I denne artikkelen forklarte vi hvordan Du bruker Postgres ORDER BY DESC søkeord for å sortere resultatene av en spørring. Med våre eksempler for å komme i gang, vil du kunne bruke disse søkeordene i Dine Egne PostgreSQL-spørringer.