Postgres Bestil af DESC

introduktion

når du henter oplysninger fra en Postgres-tabel, vil du muligvis have dine resultater returneret i en bestemt rækkefølge. Søgeordene ORDER BY giver dig mulighed for at sortere poster fra databasen i den kolonne, du vælger. Du kan også angive, om du vil have dine resultater sorteret i stigende eller faldende rækkefølge. I denne artikel viser vi dig, hvordan du sorterer poster og returnerer dem i faldende rækkefølge ved hjælp af Postgres-ordren efter DESC-nøgleord.

forudsætninger

du skal sørge for, at følgende forudsætninger er på plads, før du fortsætter med denne tutorial:

  • Postgraduate skal installeres på din computer for at følge med i Vores postgraduate ORDER by DESC eksempler.
  • du skal have nogle grundlæggende kendskab til postgraduate for at få mest muligt ud af denne artikel.

Postgres ORDER by descending

lad os begynde med at se på den grundlæggende syntaks af ORDER BY nøgleord med DESC klausul:

1
vælg * fra Tabelnavn Bestil efter kolonnenavn DESC

BEMÆRK: Hvis du i stedet vil have dine resultater returneret i stigende rækkefølge, skal du bare erstatte nøgleordet DESC med ASC.

Postgres ‘Bestil efter’ eksempel

før vi fortsætter med vores eksempel, lad os oprette en tabel og navngive den “richest_countries”:

1
2
3
4
5
6
Opret tabel richest_countries (
ID seriel primær nøgle,
land VARCHAR(30),
kontinent varchar (30),
gdp_per_capita numerisk
);

Bemærk: Sørg for at oprette en database til din eksempeltabel ovenfor, før du udfører CREATE TABLE – sætningen vist ovenfor. Når du har oprettet din database, kan du bruge kommandoen \c i pskl, efterfulgt af databasenavnet, til at oprette forbindelse til den.

lad os nu indsætte et par poster i tabellen. Dette giver os nogle eksempler på data, der kan bruges i vores eksempler:

1
2
3
4
5
6
7
8
9
10
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Australien’, ‘Australien’, ‘58824’);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Singapore’, ‘Asien’, ‘62690’);
indsæt værdier i richest_countries (land, kontinent, gdp_per_capita) (‘Danmark’, ‘Europa’, ‘63434’);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Amerikas Forenede Stater’, ‘Nordamerika’, ‘64906’);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Katar’, ‘Asien’, ‘65062’);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Island’, ‘Europa’, ‘78181’);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Irland’, ‘Europa’, ‘81477’);
indsæt værdier i richest_countries (land, kontinent, gdp_per_capita) (‘Hvirvelland’, ‘Europa’,’83832′);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier (‘Norge’, ‘Europa’, ‘86362’);
indsæt i richest_countries (land, kontinent, gdp_per_capita) værdier’, ‘119719’);

eksempel

Postgres Sorter efter erklæring ved hjælp af’Bestil efter’

i det følgende eksempel viser vi de rigeste lande og sorterer dem efter deres BNP pr. indbygger og returnerer posterne i faldende rækkefølge:

1
2
3
Vælg land, kontinent, støbt(gdp_per_capita som penge)
fra richest_countries
Bestil af gdp_per_capita DESC;

Bemærk, at ovenstående erklæring bruger CAST i forbindelse med AS MONEY: dette returnerer kolonneværdierne gdp_per_capita i et USD-valutaformat. Forespørgslen sorterer derefter Postgres-posterne fra det højeste BNP pr. indbygger til det mindste:

1
2
3
4
5
6
7
8
9
10
11
12
13
land / kontinent / gdp_per_capita
————————–+—————+—————-
Portugal | Europa | $119,719.00
Norge | Europa | $86,362.00
Hvirvelland | Europa | $83,832.00
Irland | Europa | $81,477.00
Island | Europa | $78,181.00
Katar | Asien | $65,062.00
Amerikas Forenede Stater | Nordamerika | $64,906.00
Danmark | Europa | $63,434.00
Singapore / Asien / $62,690. 00
Australien / Australien| $58,824.00
(10 rækker)

sortering af poster i faldende rækkefølge med grænse

i vores næste eksempel sorterer vi de rigeste lande, men denne gang begrænser vi antallet af poster, der returneres:

1
2
3
4
Vælg land, kontinent, støbt(gdp_per_capita som penge)
fra richest_countries
Bestil efter gdp_per_capita DESC
LIMIT 5;

denne erklæring skal returnere følgende:

1
2
3
4
5
6
7
8
land / kontinent / gdp_per_capita
————-+———–+—————-
Portugal / Europa / $119,719.00
Norge | Europa | $86,362.00
Hvirvelland | Europa | $83,832.00
Irland | Europa | $81,477.00
Island | Europa | $78,181.00
(5 rækker)

eksempel ved hjælp af Postgres ORDER BY DESC-klausulen

Sorter efter postgrescl-sætning ved hjælp af flere kolonner

når du bruger nøgleordene ORDER BY, kan du sortere poster i mere end en kolonne. I dette eksempel sorterer vi de rigeste lande efter kontinent og sorterer derefter efter BNP pr. indbygger i faldende rækkefølge:

1
2
3
Vælg land, kontinent, støbt(gdp_per_capita som penge)
fra richest_countries
Bestil efter kontinent, gdp_per_capita DESC;

denne erklæring vil vende tilbage til følgende tabel:

1
2
3
4
5
6
7
8
9
10
11
12
13
land / kontinent / gdp_per_capita
————————–+—————+—————-
Danmark | Asien | $65,062.00
Singapore | Asien | $62,690.00
Australien | Australien | $58,824.00
Danmark | Europa | $119,719.00
Norge | Europa | $86,362.00
Hvirvelland | Europa | $83,832.00
Irland | Europa | $81,477.00
Island | Europa | $78,181.00
Danmark | Europa | $63,434.00
Amerikas Forenede Stater / Nordamerika| $64,906.00
(10 rækker)

konklusion

når du udfører en forespørgsel, kan du sortere de returnerede poster, hvilket gør dine resultater mere læsbare og hjælper dig med at få bedre indsigt fra dine data. Nøgleordene ORDER BY giver dig mulighed for at angive en kolonne, hvor du skal sortere dine resultater; tilføjelse af DESC – klausulen gør det nemt at sortere i faldende rækkefølge. I denne artikel forklarede vi, hvordan du bruger Postgres-ordren efter DESC-nøgleord til at sortere resultaterne af en forespørgsel. Med vores eksempler for at komme i gang, kan du bruge disse søgeord i dine egne postgraduate forespørgsler.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.