Pagina1 van 1
Forum

Welkom bij de Tweaking4All gemeenschapsforums!
Voor je gaat deelnemen, bekijk de Forum Regels!

Specifieke onderwerpen: Start het onderwerp met de naam van het programma of systeem.
Bijvoorbeeld “MacOS X – Jouw vraag“, of bijvoorbeeld “MS Word – Jouw Tip of Truc“.

Merk op: Omschakelen naar een andere taal zal niet werken als je een post aan het lezen bent aangezien er waarschijnlijk geen vertaling beschikbaar is.




SQLite - Voorkomen ...
 
Deel:
Meldingen
Alles wissen

SQLite - Voorkomen van NULL returns (COALESCO)


 Hans
(@hans)
Noble Member Admin
Deelgenomen: 9 jaar geleden
Berichten: 2057
Topic starter  

Soms kan een SELECT een NULL waarde teruggeven, b.v. in een query zoals deze waarbij geen records werden gevonden in de subquery:

SELECT  (SELECT someid FROM sometable WHERE somevalue=something) ...

Als jouw applicatie de return waarde dan om wil zetten naar b.v. een nummer (integer) dan kon je weleens de foutmelding krijgen- "" not an Integer;
Na wat zoek werk vond ik een handige oplossing in de functie COALESCE welke een aantal waarden (variable) neemt, en daarvan de eerste terug geeft die geen NULL is (tenzij alle waarden NULL zijn).
Dus COALESCE(NULL. NULL, 1, 2, NULL) levert "1", en COALESCE(NULL,"a","b") levert "a".
Stel we willen in ons voorbeeld minstens een '0' terug krijgen dan kunnen we dat zo doen:

SELECT COALESCE( (SELECT someid FROM sometable WHERE somevalue=something), 0)  ...

Dus als de subquery NULL terug geeft, dan geeft COALESCE een '0' terug in plaats van een NULL.


BeantwoordenCiteren

Bevalt je wat je hier ziet, en wil je graag helpen? 

Uiteraard is de beste manier van helpen, door anderen hier te helpen met hun vragen. Maar je kunt ons ook op andere manieren helpen:

- Shop bijvoorbeeld bij Amazon, het kost je niks extra, maar het kan zijn dat wij een kleine commissie ontvangen,
- stuur me een koffie via PayPal ($5, $10, $20, or zelf kiezen),
- je kunt ook een Patreon worden,
- of BitCoin (BTC), of BitCoinCash (BCH) doneren.

Deel: