Esittely
PostgreSQL:ssä COUNT()
-funktio palauttaa määritetyn taulukon rivien määrän, ja SELECT
-lause palauttaa tietueet, jotka vastaavat määritettyjä kyselyehtoja. Yhdessä käytettynä tämä funktio ja lauseke voivat viedä PostgreSQL-kyselyt seuraavalle tasolle ja palauttaa niiden tietueiden määrän, jotka täyttävät kyselyssä määritetyt kriteerit. Tässä artikkelissa näytämme, miten Postgresin COUNT- ja SELECT-funktioita käytetään yhdessä, jotta saadaan selville, kuinka monta tietuetta palautetaan tietyllä kyselyllä.
Edellytykset
Voit varmistaa, että PostgreSQL on asennettu tietokoneellesi, ennen kuin jatkat tämän opetusohjelman parissa. Sinun on käytettävä tietokantaa SELECT COUNT
lausekkeiden suorittamiseen. Tarvitset myös jonkin verran PostgreSQL:n perustietoja, jotta voit seurata tässä artikkelissa annettuja esimerkkejä.
PostgreSQL COUNT SELECT
Seuraavaa syntaksia käytetään, kun COUNT()
-funktiota käytetään yhdessä SELECT
-lauseen kanssa:
1
|
SELECT COUNT ( , ) FROM TAULUKON_NIMI;
|
Kaivetaanpa hiukan syvemmälle edellä esitettyyn syntaksiin:
-
SELECT
– Tätä käytetään tiettyjen sarakkeiden valitsemiseen tietokannasta. -
COUNT
– Tätä käytetään taulukon tietueiden lukumäärän laskemiseen. -
DISTINCT
– Tätä lauseketta käytetään duplikaattien poistamiseen palautetuista tietueista. -
Asterisk (*)
– Tähden käyttäminen vastaa taulukon kaikkien sarakkeiden valitsemista. -
column_name
– Tämä edustaa sen sarakkeen nimeä, jonka tietueet halutaan laskea. -
table_name
– Tämä edustaa sen taulukon nimeä, jonka tietueet halutaan laskea.
PostgreSQL Count Function Esimerkkejä
Käytämme esimerkissämme taulukkoa nimeltä countries
:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
country_id | country_name | continent | code
————+————————–+—————+—— 35 | Etelä-Afrikka | Afrikka | AF 14 | Kanada | Pohjois-Amerikka | NA 51 | Kuuba | Pohjois-Amerikka | NA 41 | Meksiko | Pohjois-Amerikka | NA 45 | Amerikan yhdysvallat | Pohjois-Amerikka | NA 85 | Argentiina | Etelä-Amerikka | Etelä-Amerikka | SA 37 | Venezuela | Etelä-Amerikka | Etelä-Amerikka | SA 63 | Filippiinit | Aasia | AS 83 | Kiina | Aasia | AS 22 | Venäjä | Aasia | AS 21 | Yhdistyneet arabiemiirikunnat | Aasia | AS 62 | Saksa | Eurooppa | EU 73 | Italia | Eurooppa | EU 28 | Iso-Britannia | Eurooppa | EU |
VALITSE LASKENTAA KAIKKI esimerkkiin
Ensimmäisen esimerkkimme, laskemme taulukon rivien määrän:
1
|
SELECT COUNT(*) AS number_of_rows FROM countries;
|
Tämän kyselyn tulos näyttää seuraavalta:
1
2 3 |
number_of_rows
—————- 14 |
Huomatkaa, että olemme käyttäneet alias-nimeä ottamalla mukaan AS
-lausekkeen määrittelemään sarakkeen uuden nimen.
Tulos sisältää vain yhden sarakkeen, koska ainoa palautettava tieto on taulukon rivien lukumäärä.
COUNT-sarakkeen esimerkki
Seuraavaksi yritetään laskea rivien lukumäärä määritetyssä sarakkeessa.
1
|
SELECT COUNT(”maan_nimi”) AS number_of_rows FROM countries;
|
Tämän kyselyn tulos näkyy alla:
1
2 3 |
number_of_rows
—————- 14 |
Tulos on sama kuin ensimmäisessä esimerkkitapauksessa, koska tämä kysely laskee myös taulukon rivien kokonaismäärän.
Count distinct example
Kokeillaan tällä kertaa monimutkaisempaa esimerkkiä. Käytämme DISTINCT
-lauseketta ja laskemme rivien määrän sarakkeessa nimeltä ”manner”:
1
|
SELECT COUNT( DISTINCT manner ) FROM maat;
|
Tämän kyselyn tulos on hieman erilainen:
1
2 3 |
COUNT
——- 5 |
Tässä kyselyssä tulokseksi tulee vain viisi, koska DISTINCT
-funktio poistaa tietueista löytyneet duplikaattiarvot.
COUNT GROUP BY
Seuraavassa esimerkissä käytetään GROUP BY
-lauseketta. Laskemme rivien lukumäärän jokaiselle arvolle, joka löytyy sarakkeesta nimeltä ”koodi”:
1
2 3 |
SELECT code, COUNT(code)
FROM countries GROUP BY code; |
Tässä on kyselymme tulos:
1
2 3 4 5 5 6 7 |
koodi | COUNT
——+——-. NA | 4 SA | 2 AF | 1 AS | 4 EU | 3 |
Johtopäätös
Kun kysyt PostgreSQL-taulukkoa, on tilanteita, joissa tarvitset tiettyjä ehtoja vastaavien tietueiden lukumäärää enemmän kuin itse tietueita. Käyttämällä Postgresin COUNT- ja SELECT-toimintoja yhdessä voit saada tarvitsemasi tulokset. Tässä artikkelissa annoimme useita esimerkkejä, joissa käytetään PostgreSQL:n SELECT
-lauseketta yhdessä COUNT()
-funktion kanssa. Jos seuraat näitä esimerkkejä, sinulla on valmiudet luoda samanlaisia kyselyjä omille PostgreSQL-tauluillesi.