は、私はそのように求めることができます:結果のカウントがselected_he = yes
が2
以上であることを記録した場合件数(a.selected_he = "yes")はOKですか?
having count(a.selected_he = "yes") > 2
私がお願いしたいと思います。 しかし、私はカウント機能でa.selected_he = "yes"
を書くことができるか分からない。
私は正しいですか? null
秒、ないtrue
の非
は、私はそのように求めることができます:結果のカウントがselected_he = yes
が2
以上であることを記録した場合件数(a.selected_he = "yes")はOKですか?
having count(a.selected_he = "yes") > 2
私がお願いしたいと思います。 しかし、私はカウント機能でa.selected_he = "yes"
を書くことができるか分からない。
私は正しいですか? null
秒、ないtrue
の非
SELECT sum(CASE WHEN a.selected_he='yes' THEN 1 ELSE 0 END)>2 FROM ...
count
カウント。
'sum'はそのトリックをしますか? –
はい、そうです。もちろん、あなたは '' case(a.select_he = 'yes' then then else Null end) 'のようにカウントすることができます。なぜでしょうか? –
select id,count(*) as counts
from table
where selected_he = 'yes'
group by id
having counts > 2
where句の列にNULLが含まれていない場合。
OPは残っているものをフィルタリングしたいと思っています。しかし文脈はここではよく定義されていません。 –
あなたは自分で試してみませんか? 「私はこれをやってもいい?実際に自分で試してみると、通常はもっと早く答えることができます。 – Griffin
代わりにsum()を試してください。比較のブール結果はint(0または1)にキャストされ、両方が "カウント"されます。しかし、あなたがsum()を使うと、真の値だけを加算します。 –