最近我有有列的消費者表 - 電子郵件,AccountState和dateCreated會SQL - 按日期
AccountState的值可以是1(有效),2(未激活)和3(存檔)
特定的消費者可以擁有多個由上述帳戶狀態組成的行。
我所試圖做的是建立一個查詢返回以下
A的消費記錄清單爲每個消費者(使用電子郵件地址)
B.只有那些沒有記錄最近(所以如果一個特定的電子郵件地址有3個記錄,每個狀態1,它將返回2不是最新的)
然後,一旦我有這個列表,我想設置所有這些狀態3,因爲他們需要歸檔。
所以對於示例數據如下所示
只有行13 - 16將返回。
我試圖使用下面的查詢來做到這一點,但它不工作。
SELECT con.Email,
con.Id,
con.DateCreated AS DateRegistered,
con.DateLastActivity,
con.hasiPhone,
con.hasAndroid,
con.hasSMS,
con.CurrencyCode AS Currency,
con.AccountState
FROM Consumer con
WHERE con.AccountState <> 1
AND DateCreated =( SELECT MAX(DateCreated)
FROM Consumer con_most_recent
WHERE con_most_recent.AccountState <> 1
AND con_most_recent.Id = con.Id)
order by Email asc
定義「不工作」 – JNK 2012-02-08 14:44:52