Soms kom je in situaties dat je in een query met verschillende kolommen wilt rekenen en daarin meerdere onderdelen hebt zoals in bijvoorbeeld de volgende query:

SELECT (kolom1 * kolom2 ) + kolom3 FROM tabel

Echter, wanneer in bovenstaande query kolom 3 gelijk is aan NULL is het resultaat van de berekening ook NULL. Logischerwijs is dit niet gewenst, na flink graven in de MySQL handleiding heb ik op deze pagina de oplossing gevonden. Namelijk de IFNULL functie. Een stukje copy/paste dan maar:

IFNULL(expr1,expr2)
If expr1 is not NULL, IFNULL() returns expr1, else it returns expr2. IFNULL() returns a numeric or string value, depending on the context in which it is used:
mysql> SELECT IFNULL(1,0);
-> 1
mysql> SELECT IFNULL(NULL,10);
-> 10
mysql> SELECT IFNULL(1/0,10);
-> 10
mysql> SELECT IFNULL(1/0,’yes’);
-> ‘yes’

Met deze informatie wordt de bovenstaande query dus als volgt:

SELECT (kolom1 * kolom2 ) + IFNULL(kolom3,0) FROM tabel

Handig toch?