合計を出そうと SELECT SUM(bar) FROM foo とすると、bar に NULL が含まれてると具合がよろしくない。 SQLServer だと、こんな感じ↓で、NULL の場合は 0 として合計が出せた。 SELECT SUM(IsNull(bar, 0)) FROM foo IsNull(bar, 0) のところが Oracle だと NVL(bar, 0) PostgreSQL/Firebird だと COALESCE(bar, 0) ってすればいいみたい。 ついでに発見したので、日付と文字の変換についてもメモしておく 【日付型→文字列型変換】 [SQLServer] CONVERT(varchar, d,112) [Oracle] TO_CHAR(d, 'YYYYMMDD') 【文字列型→日付型】 [SQLServer] CONVERT (datetime,'2006
![NULL値を 0 として合計を出したり、日付→文字列変換したり: ある nakagami の日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/91294c5e7d5927632be882106d59f6c861902287/height=288;version=1;width=512/https%3A%2F%2Fblog.ss-blog.jp%2F_common%2Fimg%2Fsonet_logo_l.png)