Wanneer u uw query invoert in de SQL Editor of een berekening maakt, gebruikt u Presto SQL syntaxis. Om waarden terug te geven op basis van het feit of aan specifieke voorwaarden is voldaan, kunt u deze algemene uitdrukkingen nuttig vinden.
CASE
Om een lijst met voorwaarden te evalueren en een waarde terug te geven op basis van de eerste overeenkomst of de ware voorwaarde, gebruikt u een CASE expressie, zoals om if/else logica in te schakelen. CASE heeft twee formaten:
- In zijn eenvoudige vorm evalueert
CASEde lijst voor een specifieke uitdrukking en retourneert de waarde ervan, zoals:
CASE uitdrukking WHEN waarde THEN resultaat [ WHEN ... ] [ ELSE resultaat ] END
- In zijn gezochte vorm evalueert
CASEeen lijst met booleans en retourneert de waarde van de eersteTRUEvoorwaarde, zoals:
CASE WHEN voorwaarde THEN resultaat [ WHEN ... ] [ ELSE resultaat ] END
Bijvoorbeeld, in zijn eenvoudige vorm om een waarde ("één" of "twee") terug te geven op basis van een overeenkomende uitdrukking:
SELECT uitdrukking, CASE uitdrukking WHEN 1 THEN 'één' WHEN 2 THEN 'twee' ELSE 'veel' EINDE
Als er geen voorwaarden waar zijn, retourneert CASE de waarde van de ELSE -clausule ("veel", in dit voorbeeld), of NULL als er geen ELSE -clausule is.
Opmerking: Om een waarde te retourneren op basis van of een enkele voorwaarde waar is, gebruikt u een IF instructie.
SAMENVOEGEN
Om de eerste niet-null waarde in een lijst te retourneren, gebruikt u de uitdrukking COALESCE als COALESCE(value1, value2, value3).
ALS
Om een waarde te retourneren afhankelijk van of een voorwaarde waar of onwaar is, gebruikt u de instructie IF als IF(voorwaarde, true_value, false_value).
Opmerking: Als de voorwaarde onwaar is en er geen false_value is opgegeven, retourneert de instructie IF NULL.
IS NULL of IS NOT NULL
Om te testen of een waarde leeg is of NULL, gebruikt u de IS NULL of IS NOT NULL operator:
- Om op lege waarden te testen, gebruikt u
IS NULL. - Om te testen op niet-lege waarden, gebruikt u
IS NOT NULL.
Bijvoorbeeld om klantgegevens te testen voor mensen zonder adres:
SELECT Klant_Naam, Contact_Naam, Adres
FROM Klanten
WHERE Adres IS NULL
TRY
Om NULL te retourneren wanneer een expressie mislukt vanwege corrupte of ongeldige gegevens, gebruikt u de expressie TRY als TRY(expressie). TRY behandelt deze fouten:
- Delen door nul
- Ongeldig
CASTof functieargument - Numerieke waarde buiten bereik