null値をSUM(足し算)するとNULLになる
SELECT t1.report + t5.report
FROM ....
t5.report の値がnullだった場合、上記のSQLを実行した際に、結果は、t1.report の値に関わらず、結果はnullになってしまう。NULL値の四則演算の結果は必ずnullになるので、このようなケースが想定される場合は、回避できるようにする
COALESCE関数を使う
SELECT COALESCE(t1.report + t5.report, 0)
FROM ....
上記のように書くと、null値が含まれていた場合、0 で結果を返すことができる。ただ、t1.report が5という値が入っていて、t5.report がnullだった場合にも、0になってしまうので、下記のようにしておく。
SELECT COALESCE(t1.report + t5.report, t1.report, t5.report, 0)
FROM ....
このようにすることで、null があれば、t1.report + t5.report、t1.report、t5.report、0の順番で値を参照していくことができる。
SELECT COALESCE(t1.report + t5.report, t1.report, t5.report, 0)
このような場合、0 になるケースは、t1.report、t5.reportどちらもnullの場合になる。