結果と結果の数を同時に取得したいクエリがあります。結果のフィルタリングは複雑なので、この他の質問のようにサブクエリ トリックを単純に使用することはできません。私の最終的な目標は、結果数に基づいて結果をフィルタリングすることです。
例:
SELECT id, related_info, count(related_info)
FROM my_table
WHERE <complex filtering on related_info here>;
結果は次のようになります。
id | related_info | count(related_info)|
1 | info1| 3|
1 | info2| 3|
1 | info3| 3|
2 | info1| 2|
2 | info2| 2|
私の最終的な目標は、カウントに基づいて結果をフィルタリングすることです。次に例を示します。
SELECT id, related_info, count(related_info)
FROM my_table
WHERE <complex filtering on related_info here> having count(related_info) >=3;`
結果は次のようになります。
id | related_info | count(related_info)|
1 | info1| 3|
1 | info2| 3|
1 | info3| 3|
( id
2 の結果はフィルター処理されます)
group by
すべての結果を取得したいので使用できません。複雑なフィルタリングを 2 回実行することになるため、サブクエリは使用できません。
単一のクエリでこれを実行する方法がわかりません。