2012-03-14 7 views
0

group byステートメントの後にwhere句を使用できないという問題を回避する方法はありますか?私がグループを持っていなければならないとしたら、WHERE x LIKE 'y'これには回避策がありますか?WorkAroundでグループの後にどこを適用しますか?

+0

リストごとに式をフィルタリングする場合は、フィルタをHAVING句に入れることがあります。そうでなければ、なぜあなたはどこで使うことができないのですか? –

+0

サンプルデータ、試したクエリ、結果の誤り、実際にどのような結果が得られたかを示してください。 –

答えて

2

リストをグループごとにフィルタリングする場合は、フィルタをHAVING句に入れることができます。

select first, second, third, sum(something) something_summed 
from tablea 
group by first, second, third 
having first + second < 10 
+0

フィルタリングは機能しますか? –

+0

はい。しかし、なぜそれをグループの後に置く必要があるのですか? –

+0

クエリが正しくなるようにグループを必要とするため –

0
Select c1,c2,c4 
From (
    Select c1,c2,sum(c3) as c4 
    From table1 
    Group by c1, c2 
    ) A 
Where A.c1 Like 'yyy' 
+0

なぜ 'having'を使うのでしょうか?これはあまり効率的ではありません –

関連する問題