データベースのNULLのカラムの扱い
SELECT文でDBからデータを取得する際に、本来なら数字が含まれているべきカラムなのに、NULLが設定されている、そんなことがありました。
自分が設計してないテーブルだったので、なんでこうなっているんだよー、なんて思ったりしましたが、そこは妥協して。
NULLも0扱いしたかったので、SELECTするときにNULLだったら0に置換するようにしました。
今回は、色々なデータベースごとに、NULLをゼロに置換する方法をメモします。
NULLを0に置換するSELECT文
mysql
SELECT ifnull(NULLのカラム,'0') FROM table_name;
postgresql
SELECT COALESCE(NULLのカラム, 0) FROM table_name;
oracle
SELECT NVL(NULLのカラム, 0) FROM table_name;
sqlite
SELECT ifnull(NULLのカラム,'0') from table_name;
コメント