2014-01-06 38 views

回答

1

您可以按日期彙總並計算每個值的出現次數:

select employee, date, account, 
from table1 
group by date, employee, account 
having sum(case when flag = 0 then 1 else 0 end) > 0 and 
     sum(case when flag = 1 then 1 else 0 end) > 0; 

在你的情況下,假設該標誌是一個數字,只需要對01值,你可以簡化它到以下之一:

having count(distinct flag) = 2; 

having min(flag) <> max(flag); 

having sum(flag) > 0 and sum(1 - flag) > 0; 
+0

我也在思考這些問題,但在我的情況下,可以每天觸發多次標誌。所以在每天的基礎上,我可能會有許多具有0和1的不同'帳戶'的行。 – user2800758

+0

@ user2800758。 。 。這就是這個查詢所做的(假設'date'實際上是一個* date *,沒有時間分量)。 –

相關問題