2011-12-08 83 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()的值無效,如果這就是您要求的值。

+0

我不知道我是否在問這個問題。我只是希望查詢能夠工作,即使table2中沒有匹配的行(並且只計算table2.count)。 – domino