sql >> Database teknologi >  >> RDS >> Database

Sådan tælles antallet af rækker i en tabel i SQL

Problem:

Du vil gerne bestemme, hvor mange rækker en tabel har.

Eksempel:

Vores database har en tabel med navnet pet med data i følgende kolonner:id , eID (elektronisk identifikator) og name .

id eID navn
1 23456 gnistende
2 23457 mily
3 NULL mindre
4 NULL carl
5 34545 maggy

Lad os tælle alle rækker i tabellen.

Løsning:

COUNT(*) tæller det samlede antal rækker i tabellen:

SELECT COUNT(*) as count_pet
FROM pet;

Her er resultatet:

count_pet
5

I stedet for at indsætte stjernen som argument, kan du bruge navnet på en bestemt kolonne:

SELECT COUNT(id) as count_pet
FROM pet;

I dette tilfælde COUNT(id) tæller antallet af rækker, hvor id er ikke NULL .

Diskussion:

Brug COUNT aggregeringsfunktion til at tælle antallet af rækker i en tabel. Denne funktion tager navnet på kolonnen som dens argument (f.eks. id ) og returnerer antallet af rækker for denne særlige kolonne i tabellen (f.eks. 5).

Som nævnt ovenfor, når du angiver en kolonne i stedet for stjernen, vil funktionen kun tælle ikke-NULL værdier. Da id er den primære nøgle i vores tabel – og derfor har en unik og ikke-NULL værdier – det er en god kandidat til at tælle det samlede antal rækker i tabellen.

For at tælle alle rækker kan du selvfølgelig i stedet indsætte stjernetegnet som argument til COUNT. Dette vil tælle alle rækker, inklusive dem med værdien NULL i enhver kolonne.

Her er et eksempel på at tælle antallet af rækker for en kolonne, der har NULL værdier:

SELECT COUNT(eID) as count_pet
FROM pet;
count_pet
3

Det anbefales, at du sender en primær nøglekolonne eller *-tegnet til funktionen COUNT for at tælle antallet af rækker i en tabel. Som vi har set, vil begge tilgange give det samme resultat.


  1. Tjek, om værdien findes i Postgres-arrayet

  2. Sådan håndteres Play Framework 2-databaseudviklinger i produktionen

  3. Oprettelse af en PostgreSQL-bruger og tilføjelse af dem til en database

  4. Indsæt forespørgsel for at indsætte rækker i MySQL