The " Count " -funktionen i TSQL returnerar antalet rader i en fråga . Dock kommer denna funktion räknas endast dessa poster där fältet inte läst " NULL . " Att räkna dessa register med de kolumner som inte har några uppgifter och därmed vara " NULL , " du måste presentera en annan funktion , NULLIF , att din SQL-frågan . NULLIF Funktionen har två argument , som du kommer att ersätta med uttryck eller siffror när du använder funktionen : den returnerar ett null-värde om de två argumenten är lika , annars returnerar de första argumenten . Saker du behöver
SQL Server 2008
Visa fler instruktioner
1
Klicka på "Start ", " Alla program " och sedan " SQL Server 2008 . " Klicka på " SQL Server Management Studio " för att välja det. Skriv ditt användarnamn och lösenord för att logga in i Management Studio . Klicka på " Databaser " på " Object Explorer " för att utöka databasen . Leta upp och klicka på önskad databas .
2
Högerklicka på " Tabeller " och klicka sedan på " Nytt bord " för att skapa en ny tabell som heter "produkter . " Skapa tre fält: " id ", " name " och " sold_out " genom att klicka på ett tomt fält och skriva ett namn på fältet . Klicka på " Data Type " drop-down alternativ bredvid fältnamnet , och välj " varchar " typen för " id " fältet . Likaså satt "namn" områden som " varchar " datatyp och sedan ställa det tredje fältet som " int " typ .
3
Klicka på " Ny fråga " på den högra delen av fönstret . Skriv följande kod :
Sätt in objekt ( id , namn ) värden ( 1 , " Objekt1 " , null ) katalog
Sätt in objekt ( id , namn ) Värden ( 2 , " item2 " , 1 ) katalog
Sätt in objekt ( id , namn ) Värden 3 ( " item3 " , 1 ) katalog
Klicka " Execution " för att köra frågan . Detta kommando kommer att sätta in tre skivor i tabellen .
4
Skriv in följande kod för att räkna objekt som inte har sålts ut . Den " sold_out " kolumn i " objekt " Tabellen visar om objektet säljs ut , med värdet " 1 " i kolumnen som anger ett objekt säljs ut och " 0 " anger att objektet är fortfarande i lager .
Välj id ,
(
Count ( * ) AS item_count ,
) katalog
(
Count ( NULLIF ( 1 , sold_out ) ) katalog
) AS item_not_sold_out
värdet på sold_out i den första posten är NULL. Den NULLIF funktionen returnerar " 1 " för den första posten . Den " Count " -funktionen kommer att räkna det . Antalet räkna kommer att registreras i en kolumn med rubriken " item_not_sold_out . " Addera