PostgreSQL NULL
er betegnelsen som brukes for å representere en manglende verdi. En NULL verdi i en tabell er en verdi i et felt som ser ut til å være tom.
Et felt med en NULL-verdi er et felt med ingen verdi. Det er svært viktig å forstå at en NULL-verdi er annerledes enn en null verdi eller et felt som inneholder mellomrom
Syntax.
Den grunnleggende syntaks for å bruke NULL
mens skape et bord er som følger:
CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL, NAME TEKST NOT NULL, AGE INT NOT NULL, ADRESSE CHAR (50), LØNN REAL);
Her IKKE NULL
betyr at kolonnen skal alltid akseptere en eksplisitt verdi av en gitt datatype. Det er to kolonner hvor vi ikke fikk bruke NOT NULL. Derfor betyr disse kolonnene kan være NULL >
Et felt med en NULL-verdi er en som har stått tomt i posten opprettelse
Eksempel:..
NULL verdi kan føre til problemer ved valg av data, men fordi når man sammenligner en ukjent verdi til en annen verdi, er resultatet alltid ukjente og er ikke inkludert i de endelige resultater. Vurdere følgende tabell, COMPANY med følgende poster:
ID Navn Alder ADRESSE LØNN ---------- ---------- ---------- - --------- ---------- 1 Paul 32 California 20000,02 Allen 25 Texas 15000,03 Teddy 23 Norge 20000,04 Mark 25 Rich-Mond 65000,05 David 27 Texas 85000,06 Kim 22 Sør-Hall 45000,07 James 24 Houston 10000,0
La oss bruke UPDATE statement å sette noen kan ha nullverdier verdier som NULL som følger:
testdb = # UPDATE selskapet satt ADRESSE = NULL, LØNN = NULL hvor ID IN (6,7);
Nå SELSKAPET tabell bør ha følgende poster:
id | Navn | alder | adressere | lønn ---- + ------- + ----- + ------------- + -------- 1 | Paul | 32 | California | 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norge | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 6 | Kim | 22 | | 7 | James | 24 | | (7 p)
Neste, la oss se på bruken av ER IKKE NULL
operatøren å liste ned alle postene der lønnen er ikke NULL:
testdb = # SELECT ID, navn, alder , ADRESSE, lønn fra bedriften der LØNN ER IKKE NULL;
Over PostgreSQL uttalelse vil produsere følgende resultat:
id | Navn | alder | adressere | lønn ---- + ------- + ----- + ------------ + -------- 1 | Paul | 32 | California | 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norge | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 (5 rader)
Følgende er bruken av ER NULL
operatør som vil liste ned alle poster der lønnen er NULL:
testdb = # SELECT ID, navn, alder, adresse, LØNN Fra selskap hvor lønnen er NULL;
Over PostgreSQL uttalelse vil produsere følgende resultat:
id | Navn | alder | adressere | lønn ---- + ------- + ----- + --------- + -------- 6 | Kim | 22 | | 7 | James | 24 | | (2 p)