Microsoft Transact SQL (T- SQL) forespørgsel sprog kan du hurtigt returnere antallet af rækker matcher en given betingelse ved hjælp af en optælling funktion. Det kan bruges i kombination med andre aggregatfunktioner eller med det DISTINCT klausul at opnå mere detaljerede resultater . Anvendelse af aggregerede funktioner, såsom MIDDEL ( ) , med en optælling erklæring giver dig mulighed for at få antallet af forekomster af hver gennemsnittet. Brug GROUP BY er en anden måde at få resultater med en optælling per række af resultater. Tællefunktioner
T-SQL har to funktioner, der bruges til at udføre tælle. TÆL () funktionen bruges til at bestemme det samlede antal rækker , der opfylder kriterierne for resultater, der vil passe ind i et heltal datatype , med en maksimal resultat af 2147483647 . For forhold, der resulterer i større værdier , skal du bruge COUNT_BIG () funktionen i stedet.
Syntax
Begge tællefunktioner bruger samme syntaks og har de samme inputparametre . Indeholder som standard tæller alle rækker , herunder dem med dublerede og null værdier. Syntaksen er COUNT ( [ Alle eller Distinct ] udtryk) . At tælle alle rækker , herunder eksemplarer og null værdier , skal du bruge ALLE søgeord eller bruge en stjerne (*). At begrænse resultatet til antallet af unikke , ikke - Null-værdier , bruge DISTINCT nøgleordet . For at begrænse resultatet sat yderligere tilføje et udtryk efter ALL eller DISTINCT søgeord. Dette er almindeligt anvendt til at begrænse tælle til en bestemt kolonne , men kan være ethvert gyldigt T-SQL udtryk. Underforespørgsler og aggregatfunktioner er ikke tilladt i denne sammenhæng.
Brug aggregatfunktioner med Grev
COUNT () og COUNT_BIG ( )-funktioner kan bruges sammen med andre samlede funktioner, såsom gennemsnit , sum, eller max. Du skal blot medtage disse i vælge erklæring sammen med optællingen. For eksempel for at finde antallet af unikke farver for emner i din beholdning , kan du bruge : Hej
SELECT COUNT ( DISTINCT farve)
FRA Inventory
Begrænsning Count resultater
Når du bruger tæller , kan du vælge at begrænse dine forespørgsler ved hjælp af en WHERE eller en gruppe af erklæring til yderligere at nedbryde dine resultater. Ved hjælp af en erklæring som denne , for eksempel, kan tillade dig at finde ud af farven på alle ikke- udgåede elementer i din beholdning. Dette vil give dig optællingen af hver farve , snarere end blot det samlede antal , du ville få, hvis du ikke bruge GROUP BY klausul .
SELECT count ( * ) , farve
FRA Inventory
WHERE status! = ' ophørte '
GROUP BY farve