Hvordan telle SQL NULL- og IKKE NULL-verdier i en kolonne

Å jobbe med NULL-verdier i SQL er en vanlig utfordring hver dataanalytiker og databaseprofesjonell står overfor. Dette er spesielt fordi håndtering av NULL kan være overveldende og forvirrende, og føre til frustrasjon under dataanalyse.

Det er imidlertid viktig å forstå hva disse NULL-verdiene er og hva de betyr for at du skal ha nøyaktig og omfattende datainnsikt. Denne artikkelen vil utforske SQL-kommandoer og hvordan du bruker dem til å telle NULL- og IKKE NULL-verdier.

Hva er SQL NULL-verdi?

En NULL-verdi betyr ingen verdi, ikke null eller mellomrom.

Dine tradisjonelle sammenligningsoperatorer som =, <, > og <> kan derfor ikke brukes på den. Hvis det brukes, vil resultatet imidlertid være UKJENT.

Tenk på NULL-verdien som et felt som står tomt under oppføringen. Du kan opprette en tabell og sette inn en ny kolonne uten å legge til en verdi. Det feltet vil dermed være en NULL-verdi. NULL-verdier kan også settes inn i kolonner av enhver datatype.

  19 beste app for bildegjenoppretting for iPhone

For å demonstrere dette bør du lage en ny SQL-tabell ved å bruke syntaksen nedenfor:

 CREATE TABLE Employee (

 FirstName VARCHAR(50),

 LastName VARCHAR(50),

 PhoneNum VARCHAR(15),

 Salary FLOAT

);

INSERT INTO Employee (FirstName, LastName, PhoneNum, Salary)

VALUES

 ('Maxwell', 'Ayomide', '812-345-6789', 150000.00),

 ('David', 'Tosin', NULL, 450000.00),

 ('Eben', 'Teniola', '912-345-6789', 590000.00),

 ('Kenneth', 'Olisa', '809-456-8732', NULL),

 ('Esther', 'Oge', NULL, NULL);

Du kan også oppdatere NULL-verdier i en tabell ved å bruke den nybegynnervennlige SQL-kommandoen, UPDATE-setningen. For å gjøre dette, bruk syntaksen nedenfor.

 UPDATE Employee
SET FirstName="Esther"
WHERE Salary = 200000;

For å se resultatet, kjør:

 SELECT * FROM Employee;

Når er SQL NULL-verdier nyttige?

En NULL-verdi kan brukes i ulike situasjoner i SQL:

  • Når dataene er utilgjengelige eller ukjente på tidspunktet for datainntasting.
  • Når dataene ikke gjelder for den aktuelle enheten. For eksempel, i en undersøkelse, kan et spørsmål som ber deltakerne om å krysse av i boksen hvis de har barn ha noen NULL-verdier.
  Er overlevelsesbaser og overlevelseshjem det samme i Minecraft

Hva er SQL IS NULL-tilstand?

SQL IS NULL-kommandoen er en av de viktige SQL-kommandoene enhver programmerer bør kjenne til. Denne kommandoen brukes til å teste for NULL-verdier og brukes best når du leter etter NULL-verdier. Denne kommandoen vil returnere alle NULL-radene i kolonnen som er spesifisert i spørringen.

 SELECT FirstName, LastName, PhoneNum

FROM Employee

WHERE PhoneNum IS NULL;

Denne spørringen vil returnere alle NULL-verdiene i PhoneNum-kolonnen.

Hva er SQL IS NOT NULL-tilstand?

SQL IS NOT NULL-kommandoen er det motsatte av SQL IS NULL-kommandoen.

Denne kommandoen tester for ikke-tomme verdier (IKKE NULL-verdier). Dermed vil den alltid returnere alle radene i en kolonne med en verdi og ekskludere alle NULL-verdier i kolonnen spesifisert i spørringen.

 SELECT FirstName, LastName, PhoneNum

FROM Employee

WHERE PhoneNum IS NOT NULL;

Denne spørringen vil returnere alle NOT NULL-verdiene i PhoneNum-kolonnen.

Hvordan telle SQL NULL-verdier i en kolonne?

Kommandoen COUNT() brukes til å telle. Det er en kommando som kommer godt med når du analyserer data i SQL-tabellene dine og arbeider med SQL-underspørringer og midlertidige tabeller.

  Slik sletter du kontakter fra iPhone

Bruk denne spørringen til å telle antall NULL-verdier i PhoneNum-kolonnen.

 SELECT COUNT(*) AS [Total Number of NULL] 

FROM Employee

WHERE PhoneNum IS NULL

Dette vil returnere:

Hvordan telle IKKE NULL-verdier i en kolonne?

Bruk NOT NULL-kommandoen til å telle antall ikke-NULL-verdier i PhoneNum-kolonnen.

 SELECT COUNT(PhoneNum) AS [Total Number of Non-NULL Values] 

FROM Employee

WHERE PhoneNum IS NOT NULL

Dette vil returnere:

Du kan også bruke denne spørringen til å sette resultatet i en tabell.

 SELECT SUM(CASE WHEN PhoneNum is null THEN 1 ELSE 0 END) 

AS [Number Of Null Values],

COUNT(PhoneNum) AS [Number Of Non-Null Values]

FROM Employee

I denne spørringen ble CASE- og IS NULL-kommandoene brukt til å klassifisere NULL-en din i PhoneNum-kolonnen som 1. Denne verdien ble lagt til og holdt i de nyopprettede Number Of Null Values-kolonnene.

Tell NULL-verdier og fortsett med analysen din

Så overveldende som NULL-verdien kan være. De er faktisk enkle å jobbe med. Ved å bruke COUNT(), kan du telle NULL- og ikke-NULL-verdiene dine med bare noen få linjer med SQL-koder.

Når du kjenner SQL-kommandoene dine, kan du bruke dem på ulike brukstilfeller og analysere dataene dine uten problemer.