0

出現回数に基づいた、私の条件のみを満たす値を表示しようとしています。次の表を想定しています。

+--------------------+----------------+  
| | アカウント ID | キャンペーン ID |  
+--------------------+----------------+  
| | 234 | 980 |  
| | 893 | 458 |  
| | 234 | 178 |  
| | 097 | 741 |  
| | 893 | 584 |  
| | 893 | 452 |  
| | 109 | 789 |  
+--------------------+----------------+

キャンペーン ID が 2 つ以上しかないアカウント ID を表示する必要があります。したがって、前述の表の場合、結果は次のようになります。
234
893

countat式を使用whereすることはできません。私が使用した:
CASE WHEN count(account_id) >= 2 THEN es.entity_name ELSE NULL
END AS Live_date

ただし、クエリとは関係のないレコードが多すぎます。私が見つけた関連する質問のほとんどは、条件として使用するのではなく、出現回数を見つけることについて話しています。これに対する他の解決策はありますか。

4

2 に答える 2

1

HAVING句を使用してみてください:

select 
  account_id 
From YourTable 
group by account_id 
having count(*)>=2
于 2013-10-08T08:50:31.343 に答える