NULL waarden

Op deze pagina:

    Als een kolom NULL waarden bevat en records uit deze kolom in berekeningen worden gebruikt, dan is het handig om te waarborgen dat je geen NULL waarden gebruikt in je berekeningen. SQL heeft een aantal functies die je daarvoor kunt gebruiken: IFNULL(), ISNULL(), COALESCE() en NVL().

    Voorbeelden:

    
    /*Met de MySQL IFNULL() functie kun je 
    een alternatieve warde opgeven indien 
    een uitdrukking NULL is:*/
    SELECT Productnaam, UnitPrijs * (UnitsOpVoorraad + IFNULL(UnitsBesteld, 0))
    FROM Producten;
    
    --Dit kan ook met de COALESCE() functie:
    SELECT Productnaam, UnitPrijs * (UnitsOpVoorraad + COALESCE(UnitsBesteld, 0))
    FROM Producten;
    
    --SQL Server / Sybase
    /*Met de SQL Server / Sybase ISNULL() functie 
    kun je een alternatieve waarde teruggeven 
    indien een uitdrukking NULL is:*/
    SELECT Productnaam, UnitPrijs * (UnitsOpVoorraad + ISNULL(UnitsBesteld, 0))
    FROM Producten;
    
    --MS Access
    /*De MS Access IsNull() functie geeft TRUE (-1) 
    indien ene uitdrukking een NULL waarde is, 
    anders FALSE (0):*/
    SELECT Productnaam, UnitPrijs * (UnitsOpVoorraad + IIF(IsNull(UnitsBesteld), 0, UnitsBesteld))
    FROM Producten;
    
    /*
    Je gebruikt de MS Access IIF functie om te bepalen of een andere expressie waar of onwaar is. Als de expressie waar is, retourneert IIF de ene waarde. Als de expressie onwaar is, retourneert IIF een andere waarde.
    */
    
    --Oracle
    --Met de Oracle NVL() functie bereik je hetzelfde:
    SELECT Productnaam, UnitPrijs * (UnitsOpVoorraad + NVL(UnitsBesteld, 0))
    FROM Producten; 
    

     

    Verwante artikelen