GeeksforGeeks
i den här artikeln kommer vi att se hur man använder NULL-värden inuti inte i klausul i SQL. NULL har en särskild status i SQL. Det representerar frånvaron av värde så det kan inte användas för jämförelse. Om du använder den för jämförelse kommer den alltid att returnera NULL.
för att använda NULL-värde i not in-klausulen kan vi göra en separat underfråga för att inkludera NULL-värden.
uppmärksamhet läsare! Sluta inte lära dig nu. Lär dig SQL för intervjuer med SQL Course Av GeeksforGeeks.
gör en separat where-klausul för NULL som:
fråga:
WHERE value IS NULL;
Steg 1: Skapa databasen
använd nedanstående SQL-sats för att skapa databas som heter geeks;
fråga:
CREATE DATABASE geeks;
steg 2: Använda databasen
använd nedanstående SQL-sats för att byta databaskontext till geeks:
fråga:
USE geeks;
steg 3: Tabellskapande
vi har följande demo_table i vår geeks databas.
fråga:
CREATE TABLE demo_table(NAME VARCHAR(20),GENDER VARCHAR(20),AGE INT,CITY VARCHAR(20) );
steg 4: infoga data i en tabell
fråga:
INSERT INTO demo_table VALUES('ROMY KUMARI', 'FEMALE', NULL, 'NEW DELHI'),('PUSHKAR JHA', 'MALE',24, 'NEW DELHI'),('RINKLE ARORA', 'FEMALE',23, 'PUNJAB'),('AKASH GUPTA', 'MALE', NULL, 'UTTAR PRADESH'),('NIKHIL KALRA', 'MALE', 23, 'PUNJAB'),('SHALINI JHA','FEMALE', 22, 'DELHI');
Steg 5: Visa data i tabellen
fråga:
SELECT * FROM demo_table;
utgång:
steg 6: Användning av NULL-värden i NOT NULL
för demonstrationen returnerar vi värdena från tabellen vars ålder inte är NULL-värden.
fråga:
SELECT * FROM demo_table WHERE AGE NOT IN (SELECT AGE WHERE AGE IS NULL);
utgång:
om du vill lägga till värden i satsen inte i definierar du separat inte i klausul med och operator. Om du lägger till värdet inom samma NOT IN-sats kommer det att returnera NULL.
Fråga:
SELECT * FROM demo_table WHERE AGE NOT IN ((SELECT AGE WHERE AGE IS NULL),24);
Utgång:
returnerade tomt bord.
det rätta sättet att lägga till andra värden i not in-klausul med NULL-värden:
fråga:
SELECT * FROM demo_table WHERE AGE NOT IN (SELECT AGE WHERE AGE IS NULL) and AGE NOT IN (24);
utgång:
Leave a Reply