mysql:14717
From: chuuken kenkou <chuuken kenkou <ken_ken_1962@xxxxxxxxxx>>
Date: Tue, 20 Jan 2009 10:25:54 +0900
Subject: [mysql 14717] Re: sum関数のバージョンによる動作の違い
nullなのに、0を返していたというのが事実なら、MySQL 3.23.55に問題が あったのではないでしょうか? nullの場合に、0としたいなら、coalesce関数を使うのが簡単だと思います。 select sum(coalesce(id,0)) from tbl1; なお、coalesce関数は、主要なRDBMSで、同じ機能で実装されています。> Date: Tue, 20 Jan 2009 10:17:07 +0900> From: akiro@xxxxxxxxxx> Subject: [mysql 14716] sum関数のバージョンによる動作の違い> To: ml@xxxxxxxxxx> > いつもお世話になっています。> mysqlを3.23から5.0に更新したときに、以下のトラブルに> 見舞われました。> > create table tbl1(id int);> insert into tbl1 values(null);> > としておいて、sumを取ると、> select sum(id) from tbl1;> > 3.23.55では0が返され、5.0.45ではnullが返されます。> > これは周知のことなのかどうか、> なにか別の違いから由来するものなのかどうか、> また、nullを計算から除外(0として計算)するのに> 簡単ないい方法があるのかどうか、> > 教えていただければ助かります。> > _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/> > 柴垣 akiro@xxxxxxxxxx> > _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/> > > _________________________________________________________________ 【倖田來未特集】新曲からライブ映像、独占インタビューなど倖田來未満載 http://music.jp.msn.com/m-site/
14716 2009-01-20 10:17 [柴垣 <akiro@xxxxxxxx] sum関数のバージョンによる動作の違い -> @ 14717 2009-01-20 10:25 ┣[chuuken kenkou <ken_] 14718 2009-01-20 10:44 ┣[Hideki SUNADA <hidek] 14719 2009-01-20 12:31 ┗[HIRATSUKA Sadao <hir] 14720 2009-01-20 13:28 ┗[柴垣 <akiro@xxxxxxxx]