Láma napi bölcsessége #1

Nem képzeljük naívan azt, hogy egy select mindig használható adatot ad vissza.

SELECT SUM(valami) FROM akarmi...

helyett

SELECT IFNULL(SUM(valami),0) FROM akarmi...

megteheti, ha a nulla érték elfogadható ilyen esetben.

Hozzászólások

oraban van a nullok miatt vagy 3-4 fuggveny.. ;)

mi a kulonbseg akozott, hogy a sum-ban figyelembe veszi a NULL-os sort 0 ertekkel, vagy pedig figyelembe se veszi?
a vegosszegben nem kene hogy elterest okozzon.
persze vannak olyan esetek, amikor hibat okozhat, ha egy mezo NULL erteku, de szerintem a SUM pont nem ilyen.

szerk: ja ertem, ha minden sor NULL, akkor a SUM is valszeg NULL-t ad es nem nullat.

Tyrael

Az a gond, hogy akár empty set-et is adhat vissza a select.

Namost, a bejegyzésben levő példa csak egy egyszerű akármi,
viszont én kb. 3 alselect-en végzett matematikai művelet
eredményét szerettem volna megkapni. Ebből az egyik
alselect empty set-et adott.
NULL-lal végzett művelet pedig MySQL-ben NULL a dok szerint.
(NULL pedig != 0 :D)

--
A gyors gondolat többet ér, mint a gyors mozdulat.