プロが教える店舗&オフィスのセキュリティ対策術

 select sum(A.列名1)  --列名1の型はnumber
 from テーブル名 A
where A.列名2 = 定数
 and A.列名3 <> 定数;

と言った簡単なSQLなのですが、
結果としてnull値が返ることはあるでしょうか?
count では必ず数値が返ると思うのですが・・・sumの場合もヒットする値が1件もなかった場合0が返るのでしょうか?
 また、sum()またはcnt()でnullが返されるような条件があるとしたらどんな時でしょうか?

A 回答 (1件)

count()は常に0以上の数値が戻ります。



sum()は該当件数が0のとき、該当しても内容がすべてNULLの場合 NULLになります。
それ以外の場合は、NULLを除外した数値の合計値が戻ります。

この回答への補足

 ありがとうございます。とても助けられました。
えと、内容が全てnullでなくて、該当するものがなかった場合もやっぱりnullになるのでしょうか?・・・補足し忘れてまして・・・

補足日時:2004/10/18 22:26
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!