0
在MS SQL Server 2008 R2中,我有一個表Foo,並且對於Foo上的每個插入和更新,我還將FooAuditLog插入日期,用戶,PK FooId和Foo的其他一些列(包括一個數值)稱之爲cxp。只從審計日誌表中選擇一個值的更改
我現在需要檢索給定FooId隨時間變化的cxp更改歷史記錄。但是可以在不改變cxp的情況下保存Foo,而且我需要忽略這些值。
例如,如果一個特定的符(即select date, user, cxp from FooAuditLog where fooId=17
)看起來像這樣的審計日誌條目:
Date User Cxp
-------------------------
10/26 Fred 42
10/28 George 38
11/7 Tom 38
11/9 Fred 38
11/12 Joe 33
11/14 Tom 33
11/18 George 38
然後,我需要修改查詢僅返回:
Date User Cxp
-----------------------------
10/26 Fred 42
10/28 George 38
11/12 Joe 33
11/18 George 38
而且無視11/7,11/9和11/14的條目。我曾考慮過select distinct (cpx) ... group by date
,但我確實需要捕獲值變回以前值的條目。
您使用的是什麼RDBMS? – Taryn 2013-02-08 18:57:10
忽視「11/7,11/9和11/14」背後的邏輯是什麼? – Kaf 2013-02-08 19:07:05
@Kaf:我只想選擇所需值(cxp)發生變化的日誌條目。在提到的日期中,cxp與上次保存時的相同。 – cobaltduck 2013-02-08 19:33:32