0

たとえば、xという名前のテーブルとyyyという名前の列があり、値は1,2,3、NULLです。

null値を削除するために、クエリSELECT yyy FROM x WHERE yyy ISNOTNULLを記述できます。

さて、上記の結果の合計を見つけるにはどうすればよいですか。一般に、yyyの合計だけを見つけるには、クエリSELECT SUM(yyy)FROMxを記述できます。

上記を行うには、サブクエリを作成する必要があることを知っています。これを試しましたが、機能しませんでした。

SELECT SUM(SELECT yyy FROM x WHERE yyy IS NOT NULL)FROM xですが、これは機能しません。

4

2 に答える 2

0
SELECT SUM(COALESCE(yyy,0)) FROM x 

トリックを行う必要があります。

于 2012-09-20T16:45:02.810 に答える
0

書くだけ:

SELECT SUM(yyy) FROM x

mysql ドキュメントの引用:特に明記しない限り、グループ関数は NULL 値を無視します。

于 2012-09-20T16:49:25.607 に答える