如何檢測哪些行有lastModifiedDate <邊界在30秒/分鐘< approvedDate 在T-SQL?
背景:
我們有一個經常程序(Autonomy的ODBCConnector產品),它會掃描我們的數據庫視圖,並拿起自從上次運行的基礎上,lastModifiedDate領域已改變的新聞文章。 這種情況每隔三十秒鐘發生,一分鐘一分鐘,一分鐘後三十秒鐘發生。
在這個過程中有一個錯誤,其中一個操作是批准這些文章,並且不會導致lastModifiedDate更改,而是更改approvedDate。
因此,任何被修改,拾取和批准的文章都不會顯示出來。
這對於那些approvedDate >= DATEADD(second, 30, lastModifiedDate)
的文章來說總是如此 - 但是這並不代表所有仍然需要提取的文章。一篇文章可能有28/11/2011 15:48:13
的最後修改日期和28/11/2011 15:48:31
的批准日期,並且不會被過程挑選出來。
NB的approvedDate不一定比lastModifiedDate
這一切意味着您需要選擇要麼一)lastModifiedDate在最後30秒的所有文章,或b)approvedDate在最後30秒? –
這意味着我需要所有記錄,其中ApprovedDate是a)在lastModifiedDate之後,並且b)它們之間有30秒標記。例如lastModified:00:00:29 approvedDate:00:00:31或lastModified:00:00:29 approvedDate:00:01:31都應包含在結果集中。 – penguat