我目前正在開發一個轉換腳本,用於將一堆舊數據從SQL Server 2000數據庫轉移到SQL Server 2008上。我在這個轉換過程中試圖完成的事情是消除所有的組合鍵,並用一個「正確的」主鍵替換它們。顯然,當我傳輸數據時,我需要將外鍵值注入到新的表結構中。SQL - 在另一個表中獲取最大生效日期小於日期
我目前被困在一個數據集,但我似乎無法讓我的頭以集合爲基礎的方式。我工作的兩張桌子叫做「收費和法律」。他們有3對1:1關係和「鏈接」。前兩個是LawSource和LawStatue專欄的平等鏈接,但第三個專欄給我帶來了問題。 ChargeDate欄應鏈接到LawDate專欄,其中LawDate < = ChargeDate。
我當前的查詢返回給定費用的多行(在某些情況下),因爲法律可能有多於一個LawDate小於或等於ChargeDate。
這是我目前有:
select LawId
from Law a
join Charge b on b.LawSource = a.LawSource
and b.LawStatute = a.LawStatute
and b.ChargeDate >= a.LawDate
無論如何,我也可以重寫此獲得在規則表中的最新條目是相同的(或更早)在ChargeDate日期?
我收到語法錯誤,當我嘗試這...跨應用和外部申請有效的SQL Server 2K? – 2010-07-19 21:21:06
交叉申請從2005年開始。考慮在變換數據之前移動數據:) – Andomar 2010-07-19 21:28:26