SQL | NULL-funktioner

SQL | NULL-funktioner

I databasen fungerar null-värden som platshållare för data som antingen saknas eller inte är tillgänglig. ett nullvärde är en flexibel datatyp som kan placeras i kolumnen för vilken datatyp som helst, inklusive sträng int blob och CLOB-datatyper. Det är inte en komponent av någon specifik datatyp. Nollvärden är till hjälp när du rengör data före utforskande analys.

Nullvärden hjälper oss att eliminera datatvetydigheter. Nullvärden är också användbara för att upprätthålla en konsekvent datatyp över kolumnen. Vi kommer att lära oss om nödvändigheten och riktlinjerna för att använda nollvärden i den här artikeln. Låt oss nu använda exempel för att försöka förstå nullvärden och nollfunktioner bättre SQL .

Några nyckelpunkter angående användningen av NULL i SQL:

    Jämförelse med NULL: Jämförelser med NULL med vanliga jämförelseoperatorer som '=' ' <>' ' <' '>' ger inte sant eller falskt utan ger snarare ett resultat av okänt eller NULL. Istället måste du använda operatorerna IS NULL eller IS NOT NULL för att söka efter NULL-värden.  Hantera NULL i uttryck: När du utför aritmetiska eller andra operationer som involverar NULL-värden blir resultatet vanligtvis NULL. Till exempel kommer varje aritmetisk operation som involverar en NULL-operand att resultera i ett NULL-resultat. Aggregerande NULL-värden: De flesta aggregerade funktioner i SQL som SUM AVG COUNT etc. ignorera NULL-värden vid beräkning av resultat. Det finns dock några aggregerade funktioner som COUNT(*) som tar hänsyn till NULL-värden.  Indexering och NULL: Vissa databassystem hanterar NULL-värden annorlunda när det kommer till indexering. 
  1. Det är viktigt att konsultera den specifika dokumentationen för ditt databashanteringssystem för att förstå hur NULL-värden behandlas i indexstrukturer. Potentiella fallgropar: Närvaron av NULL-värden kan introducera komplexitet och potentiella fallgropar när man frågar efter eller manipulerar data. Det kräver noggrant övervägande att hantera NULL-värden på rätt sätt i SQL-frågor för att undvika oväntade eller felaktiga resultat.

Varför behöver vi NULL-värden?

Null-funktioner krävs för att utföra operationer på null-värden som är lagrade i databasen. Med NULL värden vi kan utföra operationer som tydligt identifierar om värdet är null eller inte. Med denna förmåga att känna igen nolldata kan operationer som liknar SQLs join-metoder utföras på dem.

Följande är NULL-funktionerna definierade i SQL:

ISNULL()

ISNULL-funktionen har olika användningsområden i SQL Server och MySQL. I SQL Server används funktionen ISNULL() för att ersätta NULL-värden. 

Syntax:

VÄLJ kolumn(er) ISNULL(kolumnnamn värde_att_ersätta)

FRÅN tabellnamn;

Exempel : Tänk på följande tabell för anställda

SQL | NULL-funktioner 

Hitta summan av lönen för alla anställda om lönen för någon anställd inte är tillgänglig (eller NULL-värdet) använd lön som 10 000.

Fråga:

SELECT SUM(ISNULL(Salary 10000) AS Salary FROM Employee; 

Produktion

SQL | NULL-funktioner 

I MySQL används funktionen ISNULL() för att testa om ett uttryck är NULL eller inte. Om uttrycket är NULL returnerar det TRUE else FALSE. 

Syntax:

VÄLJ kolumn(er)

FRÅN tabellnamn

WHERE ISNULL(kolumnnamn);

Exempel : Tänk på följande tabell för anställda

SQL | NULL-funktioner 

Hämta namnet på alla anställda vars lön finns tillgänglig i tabellen (inte NULL).

Fråga:

SELECT Name FROM Employee WHERE ISNULL(Salary); 

Produktion: 

SQL | NULL-funktioner 

IFNULL()

Denna funktion är tillgänglig i MySQL och inte i SQL Server eller Oracle. Denna funktion tar två argument. Om det första argumentet inte är NULL returnerar funktionen det första argumentet. Annars returneras det andra argumentet. Denna funktion används vanligtvis för att ersätta NULL-värdet med ett annat värde. 

Syntax:

VÄLJ kolumn(er) IFNULL(kolumnnamn värde_att_ersätta)

FRÅN tabellnamn;

Exempel : Tänk på följande tabell för anställda

SQL | NULL-funktioner 

 Hitta summan av lönen för alla anställda om lönen för någon anställd inte är tillgänglig (eller NULL-värdet) använd lön som 10 000.

Fråga;

SELECT SUM(IFNULL(Salary 10000) AS Salary FROM Employee; 

Produktion :

SQL | NULL-funktioner 

VÄXA SAMMAN()

COALESCE-funktionen i SQL returnerar det första icke-NULL-uttrycket bland dess argument. Om alla uttryck evalueras till null kommer COALESCE-funktionen att returnera null. 

Syntax :

VÄLJ kolumn(er) CAOLESCE(uttryck_1...uttryck_n)

FRÅN tabellnamn;

Exempel

Tänk på följande Contact_info-tabell 

SQL | NULL-funktioner 

Hämta namn och kontaktnummer för varje anställd.

Fråga:

SELECT Name COALESCE(Phone1 Phone2) AS Contact FROM Contact_info; 

Produktion

SQL | NULL-funktioner 

NULLIF()

Funktionen NULLIF tar två argument. Om de två argumenten är lika returneras NULL. Annars returneras det första argumentet. 

Syntax:

SELECT kolumn(er) NULLIF(uttryck1 uttryck2)

FRÅN tabellnamn;

Exempel : Tänk på följande försäljningstabell SQL | NULL-funktioner

SELECT Store NULLIF(Actual Goal) FROM Sales; 

Produktion

 

Slutsats

I den här artikeln lärde vi oss vad nollvärden är och varför vi bör använda dem. Vi vet nu att användning av NULL-värden är grundläggande för databaser och görs så för att bevara deras integritet. Efter detta lärde vi oss mer om de olika funktionerna som kan användas med NULL-värden. Sammanfattningsvis representerar NULL-värdet i SQL frånvaron eller okänt värde för ett visst datafält. Det kräver särskild hänsyn när du skriver frågor och uttryck för att hantera NULL-värden korrekt och undvika potentiella fallgropar.

Skapa frågesport