Ga naar hoofdinhoud

NULL

Bij SQL is NULL een belangrijk woord. Als de waarde NULL is, is de inhoud onbeschikbaar, niet bekend of niet van toepassing. NULL is niet hetzelfde als 0 of een spatie, want een 0 is een getal en een spatie is een karakter. Maar soms weet je de inhoud van een kolom niet. We zeggen dan dat de inhoud NULL is.

SELECT last_name, job_id, salary, commission_pct
FROM employees;
last_namejob_idsalarycommission_pct
KingAD_PRES24000NULL
KochharAD_VP17000NULL
De HaanAD_VP17000NULL
HunoldIT_PROG9000NULL
ErnstIT_PROG6000NULL
LorentzIT_PROG4200NULL
MourgosST_MAN5800NULL
RajsST_CLERK3500NULL
DaviesST_CLERK3100NULL
MatosST_CLERK2600NULL
VargasST_CLERK2500NULL
ZlotkeySA_MAN105000.2
AbelSA_REP110000.3
TaylorSA_REP86000.2
GrantSA_REP70000.15
WhalenAD_ASST4400NULL
HartsteinMK_MAN13000NULL
FayMK_REP6000NULL
HigginsAC_MGR12000NULL
GietzAC_ACCOUNT8300NULL

Als je vermenigvuldigt met NULL is het resultaat ook NULL. Delen door 0 mag niet, maar delen door NULL is wel mogelijk. De inhoud van een deling door NULL is ook NULL.

SELECT last_name
, job_id
, salary
, commission_pct
, salary * commission_pct
, salary / commission_pct
FROM employees;
last_namejob_idsalarycommission_pctsalary * commission_pctsalary / commission_pct
KingAD_PRES24000NULLNULLNULL
KochharAD_VP17000NULLNULLNULL
De HaanAD_VP17000NULLNULLNULL
HunoldIT_PROG9000NULLNULLNULL
ErnstIT_PROG6000NULLNULLNULL
LorentzIT_PROG4200NULLNULLNULL
MourgosST_MAN5800NULLNULLNULL
RajsST_CLERK3500NULLNULLNULL
DaviesST_CLERK3100NULLNULLNULL
MatosST_CLERK2600NULLNULLNULL
VargasST_CLERK2500NULLNULLNULL
ZlotkeySA_MAN105000.22100.052500.0
AbelSA_REP110000.33300.036666.6666666667
TaylorSA_REP86000.21720.043000.0
GrantSA_REP70000.151050.046666.6666666667
WhalenAD_ASST4400NULLNULLNULL
HartsteinMK_MAN13000NULLNULLNULL
FayMK_REP6000NULLNULLNULL
HigginsAC_MGR12000NULLNULLNULL
GietzAC_ACCOUNT8300NULLNULLNULL