2011-12-08 6 views
0
SELECT sum(table2.count+table1.count) 
FROM table1,table2 
LEFT JOIN table3 ON table2.kind=table3.kind 
WHERE table1.user='test' AND table2.user='test' AND table3.kind=1; 

私はtable1とtable2 'count'を合計しようとしています。 table2に一致する行がある場合、 'kind'は表3の 'kind'と一致する必要があります。mysqlクエリIF?

表1は常にカウントされますが、table2に一致する行がない可能性があります。 - これは現在問題があるです。両方のテーブルに行がある場合は正常に動作します。

table2の結果の合計を任意にすることはできますか(一致するものが見つからない場合)?

答えて

0

COALESCE(table2.count, 0)は、sum()に渡された値がnullになるのを避けます。

+0

私はそれを求めているかどうか分かりません。私はちょうど、テーブル2に一致する行がない場合でもクエリが機能するようにしたいだけです(そして単にtable2.countを数えます)。 – domino