SQL COUNT () -funksjon

Siste oppdatering 26. februar 2020 08:07:42 (UTC / GMT +8 timer)

COUNT () -funksjon

SQL COUNT () -funksjonen returnerer antall rader i en tabell som tilfredsstiller kriteriene spesifisert i WHERE-paragrafen. Den angir antall rader eller ikke NULL-kolonneverdier.
COUNT () returnerer 0 hvis det ikke var noen samsvarende rader.

Syntaks:

COUNT(*)COUNT( expression )

Syntaksen ovenfor er den generelle SQL 2003 ANSI-standard syntaksen. Dette hjelper deg å forstå måten SQL COUNT () -funksjonen brukes på. Men forskjellige databaseleverandører kan ha forskjellige måter å bruke COUNT () -funksjonen på.

Nedenfor kan du se at MySQL, PostgreSQL og Microsoft SQL Server følger den samme syntaksen som gitt ovenfor. Men DB2 og Oracle skiller seg litt ut.

Samlet sett kan du bruke * eller ALL eller DISTINCT eller noe uttrykk sammen med COUNT for å TELLE antall rader w.r.t. noen tilstand eller alle radene, avhengig av argumentene du bruker sammen med COUNT () -funksjonen.

DBMS-støtte: COUNT () -funksjon

DBMS Kommando
MySQL Støttet
PostgreSQL Støttet
SQL Server Støttet
Oracle Støttet

DB2 og Oracle Syntax:

COUNT ({*| expression}) OVER (window_clause)

Parametere:

Navn Beskrivelse
ALLE Gjelder alle verdier. ALL returnerer antall ikke-NULL-verdier.
DISTINCT Ignorerte duplikatverdier og COUNT returnerer antall unike ikke-verdier.
uttrykk Uttrykk består av en enkelt konstant, variabel, skalarfunksjon eller kolonnenavn, og kan også være delene av et SQL-spørsmål som sammenligner verdier mot andre verdier. Uttrykk av hvilken som helst type unntatt tekst eller bilde. Aggregerte funksjoner og underforespørsler er ikke tillatt.
* TELLER alle radene i måltabellen enten de inkluderer NULLer.

Syntaksdiagram – COUNT () -funksjon

På de påfølgende sidene har vi diskutert hvordan du bruker COUNT () med forskjellige SQL-ledd. For disse applikasjonene har vi brukt Oracle 10g Express Edition.

En viktig ting med COUNT () -funksjonen:

Når * brukes til COUNT (), alle poster (rader) TELLES hvis noe innhold NULL men COUNT (kolonnenavn) ikke TELLER en post hvis feltet er NULL. Se følgende eksempler:

SQL COUNT rader i en tabell

I det følgende eksemplet brukes et stjernetegn (*) etterfulgt av SQL COUNT () som indikerer alle radene i tabellen, selv om det er noen NULL-verdi.

Eksempeltabell: ordrer

For å få antall rader i «ordrer» -tabellen , kan følgende SQL-setning brukes:

SQL-kode:

Utgang:

 COUNT(*)--------- 34

Bildepresentasjon:

Velg COUNT (*) fra flere tabeller

Følgende spørsmål COUNT antall rader fra to forskjellige tabeller (her bruker vi ansatte og avdelinger) ved hjelp av COUNT (*) -kommandoen.

SQL-kode:

Output:

TOTAL_EMPLOYEES NO_OF_DEPARTMENTS--------------- ----------------- 107 27

SQL COUNT () med kolonnenavn

I dette eksemplet ekskluderer SQL COUNT () -funksjonen NULL-verdiene for en bestemt kolonne hvis spesifisert kolonnen som et argument i parentes av COUNT func tion.

Eksempeltabell: listofitem

For å få antall rader i «listofitem» -tabellen med følgende tilstand –

1. COUNT antall rader for kolonnen «coname»

følgende SQL-setning kan brukes:

SQL-kode:

Output:

COUNT(CONAME)------------- 2

Forklar:

Uttalelsen ovenfor TELLER de radene for «coname» -kolonnen som ikke er NULL .

SQL COUNT rader med brukerdefinert kolonneoverskrift

For å få antall rader i «ordrer» -tabellen med følgende tilstand –

1. resultatet må vises med overskriften «Antall rader»,

følgende SQL-setning kan brukes:

SQL-kode:

Utgang:

Number of Rows-------------- 36

SQL COUNT () med hvor klausul

WHERE-klausulen kan brukes sammen med SQL COUNT () -funksjon for å velge spesifikke poster fra en tabell mot en gitt tilstand.

Eksempel:

Eksempeltabell: ordrer

For å få antall rader i «ordrer» -tabellen med følgende betingelse –

1.ord_beløp mot ordren er mer enn 1500,

følgende SQL-setning kan brukes:

Utgang:

Number of Rows-------------- 22

Anvendelse av COUNT () -funksjon

På de påfølgende sidene har vi diskutert hvordan du bruker COUNT () med forskjellige SQL-ledd. For disse applikasjonene har vi brukt Oracle 10g Express Edition.

COUNT with DISTINCT-siden diskuterer hvordan du bruker COUNT-funksjonen med DISTINCT, og diskuterer også hvordan du bruker COUNT-funksjonen med ALL-ledd. I motsetning til å bruke *, når ALLE brukes, blir ikke NULL-verdier valgt.

COUNT HAVING-siden diskuterer hvordan du bruker COUNT-funksjonen med HAVING-setning og HAVING og GROUP BY.

COUNT med GROUP BY-siden diskuterer hvordan du bruker COUNT-funksjonen med GROUP BY i stigende rekkefølge og i synkende rekkefølge.

Merk: Utgangene fra nevnte SQL-setning vist her er tatt ved bruk av Oracle Database 10g Express Edition

Her er en lysbildepresentasjon av alle samlede funksjoner.

Øv SQL-øvelser

  • SQL-øvelser, øv, løsning
  • SQL Hent data fra tabeller
  • SQL-boolske og relasjonsoperatører
  • SQL jokertegn og spesielle operatorer
  • SQL-samlede funksjoner
  • SQL-formatering av spørringsutdata
  • SQL-quering på flere tabeller
  • FILTERING og SORTERING på HR-database
  • SQL JOINS
    • SQL JOINS
    • SQL JOINS on HR-database
  • SQL SUBQUERIES
    • SQL SUBQUERIES
    • SQL SU BQUERIES på HR-database
  • SQL Union
  • SQL View
  • SQL User Account Management
  • Filmdatabase
    • GRUNNLEGGENDE spørringer om filmdatabase
    • UNDERFERDER om filmdatabase
    • BLIR MED på filmdatabase
  • Fotballdatabase
    • Introduksjon
    • GRUNNLEGGENDE spørsmål om fotballdatabase
    • UNDERVISNINGER om fotballdatabase
    • BLIR MED spørsmål om fotballdatabase
  • Sykehusdatabase
    • Innledning
    • GRUNNLEGGENDE, UNDERFORDRINGER og JOINS
  • Medarbeiderdatabase
    • GRUNNLIKE spørsmål om medarbeiderdatabase
    • UNDERVISNINGER om medarbeiderdatabase
  • Mer fremover!

Leave a Reply

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *