Introduktion
I PostgreSQL returnerar COUNT()
-funktionen antalet rader i en angiven tabell och ett SELECT
-uttalande returnerar poster som matchar de angivna frågevillkoren. När den här funktionen och det här uttalandet används tillsammans kan de ta dina PostgreSQL-förfrågningar till nästa nivå och återge antalet poster som uppfyller de kriterier som anges i frågan. I den här artikeln visar vi hur man använder Postgres COUNT och SELECT tillsammans för att ta reda på hur många poster som returneras från en viss fråga.
Förutsättningar
För att gå vidare med den här handledningen måste du se till att PostgreSQL är installerat på din dator. Du kommer att behöva använda databasen för att utföra dina SELECT COUNT
-uttalanden. Du måste också ha vissa inledande kunskaper om PostgreSQL för att kunna följa med i de exempel som ges i den här artikeln.
PostgreSQL COUNT SELECT
Följande syntax används när COUNT()
-funktionen används tillsammans med ett SELECT
-meddelande:
1
|
SELECT COUNT ( , ) FROM TABLE_NAME;
|
Låt oss gräva lite djupare i syntaxen som visas ovan:
-
SELECT
– Detta används för att välja vissa kolumner från databasen. -
COUNT
– Detta används för att räkna antalet poster i den här tabellen. -
DISTINCT
– Den här klausulen används för att eliminera dubbletter från de returnerade posterna. -
Asterisk (*)
– Användningen av asterisken är likvärdig med att välja alla kolumner i en tabell. -
column_name
– Detta är namnet på den kolumn för vilken du vill räkna posterna. -
table_name
– Detta är namnet på den tabell för vilken du vill räkna posterna.
PostgreSQL Count Function Examples
Vi kommer att använda en tabell som heter countries
i våra exempel:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
country_id | country_name | continent | code
————+————————–+—————+—— 35 | Sydafrika | Afrika | AF 14 | Kanada | Nordamerika | NA 51 | Kuba | Nordamerika | NA 41 | Mexiko | Nordamerika | NA 45 | Förenta staterna | Nordamerika | NA 85 | Argentina | Sydamerika | SA 37 | Venezuela | Sydamerika | SA 63 | Filippinerna | Filippinerna | Sydafrika | SA 63 | USA | USA | USA | USA | USA | USA | USA | USA Asien | AS 83 | Kina | Asien | AS 22 | Ryssland | Asien | AS 21 | Förenade Arabemiraten | Asien | AS 62 | Tyskland | Europa | EU 73 | Italien | Europa | EU 28 | Storbritannien | Europa | EU |
SÖKTA RÄKNING alla exempel
För vårt första exempel, ska vi räkna antalet rader i tabellen:
1
|
SELECT COUNT(*) AS number_of_rows FROM countries;
|
Resultatet av denna fråga kommer att se ut som följande:
1
2 3 |
number_of_rows
—————- 14 |
Bemärk att vi har använt oss av ett alias genom att inkludera AS
-klausulen för att ange kolumnens nya namn.
Resultatet innehåller endast en kolumn, eftersom de enda data som returneras är antalet rader i tabellen.
COUNT column example
Nästan ska vi försöka räkna antalet rader i en angiven kolumn.
1
|
SELECT COUNT(”country_name”) AS number_of_rows FROM countries;
|
Resultatet av denna fråga kan ses nedan:
1
2 3 |
number_of_rows
—————- 14 |
Resultatet är detsamma som i det första exemplet eftersom den här frågan också räknar det totala antalet rader i tabellen.
Content distinct example
Vi provar ett mer komplext exempel den här gången. Vi använder DISTINCT
-klausulen och räknar antalet rader i kolumnen som heter ”continent”:
1
|
SELECT COUNT( DISTINCT continent ) FROM countries;
|
Resultatet av den här frågan kommer att bli lite annorlunda:
1
2 3 |
COUNT
——- 5 |
I den här frågan blir resultatet bara fem eftersom DISTINCT
-funktionen tar bort alla dubblettvärden som finns i posterna.
COUNT GROUP BY
Vårt nästa exempel kommer att använda GROUP BY
-klausulen. Vi kommer att räkna antalet rader för varje värde som finns i kolumnen som heter ”code”:
1
2 3 |
SELECT code, COUNT(code)
FROM countries GROUP BY code; |
Här är resultatet av vår fråga:
1
2 3 4 5 6 7 |
code | COUNT
——+——- NA | 4 SA | 2 AF | 1 AS | 4 EU | 3 |
Slutsats
När du frågar efter en PostgreSQL-tabell, finns det tillfällen då du behöver antalet poster som matchar vissa villkor mer än du behöver själva posterna. Genom att använda Postgres COUNT och SELECT tillsammans kan du få de resultat du behöver. I den här artikeln gav vi flera exempel som använder PostgreSQL SELECT
-anvisningen tillsammans med COUNT()
-funktionen. Om du följer med i dessa exempel kommer du att vara förberedd för att skapa liknande frågor för dina egna PostgreSQL-tabeller.