我有一個名爲table1
表中的SQL Server 2008過濾器的SQL Server記錄
它具有以下數據:
id refId Date IsActive
=====================================
1 2 2014-03-01 1
2 2 2014-03-01 1
3 2 2014-04-15 0 <
4 2 2014-04-15 0 <
5 2 2014-05-20 1
6 2 2014-05-20 1
7 4 2014-03-01 1
8 4 2014-03-01 1
9 4 2014-04-15 1 <
10 4 2014-05-20 1
編輯
refId
是指一個人在另一個表。所以,我想其記錄的人沒有Date = 2014-04-15
或者他們有Date = 2014-04-15
但IsActive = 0
所以根據上面,輸出應該是:
refId
=====
2
我可以使用此查詢通過MySQL
做到這一點( EDIT 2):
SELECT refId
FROM table1
GROUP BY refId
/*Check if there is no value with this date*/
HAVING MAX(Date='2014-04-15') = 0
/*Check if the date exists but the IsActive flag is off*/
OR MAX(Date='2014-04-15' AND IsActive=0) = 1
但問題是,SQL Server不接受該MAX()
功能狀態。
你可以輸入樣本輸出嗎? –