2016-08-31 67 views
0

1)#tblTempSQL更新临时表

RD 
------ 
20 Aug 
5 Aug 
30 Aug 
4 Aug 
20 Aug 
18 Aug 

2)tblMST

startDate 
--------- 
22 Aug 
6 Aug 
30 Aug 
19 Aug 

我想用tblMST更新表#tblTemp并需要得到像下面的输出:

3)#tblTemp

RD 
-------- 
22 Aug 
6 Aug 
30 Aug 
6 Aug 
22 Aug 
19 Aug 
+1

请添加更多细节。它现在没有任何意义。 –

+0

如果8月20日不存在于tblMST那么8月20日取代8月22日v.v –

回答

0

你想从tblMST最近的日期?如果是这样,你想要做这样的事情:

UPDATE #tblTemp SET RD = (SELECT top(1) startDate FROM tblMST WHERE startDate >= RD ORDER BY startDate) 

再次,我不确定这是否是你正在寻找的逻辑。让我知道如果它不是。谢谢!

+0

感谢兄弟.... !! –

0

使用下面的脚本。

UPDATE t 
SET t.RD = (SELECT MIN(StartDate) FROM tblMST 
WHERE StartDate >=t.RD) 
FROM #tblTemp t