作者JYHuang (夏天到了,冷不起来了说)
看板Database
标题[SQL ] 由UPDATE後的结果再去UPDATE自身的栏位
时间Fri Apr 29 09:40:40 2011
资料库是MS SQL 2005
TABLE里有很多日期栏位,D1A,D1B,D2A,D2B,D3A,D3B,D4A,D4B,...
首先D1A会被变更。
然後D2A=dateadd('day',3,(CASE WHEN isnull(D1B,'')='' THEN D1A ELSE D1B END))
D3A=dateadd('day',3,(CASE WHEN isnull(D2B,'')='' THEN D2A ELSE D2B END))
D4A=dateadd('day',3,(CASE WHEN isnull(D3B,'')='' THEN D3A ELSE D3B END))
.........类推...
问题是,如果下在同一个SQL,
D3A抓到的会是旧的D2A(D2B)的+3天,而不是D1A+3天後的D2A
如果要把D2A的判断弄到D3A那行的SQL的话。
下面的SQL会越串越长...
请问除了分成N次下SQL之外。
是否有其它的办法呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.39.154.82
1F:推 ClubT:也许用预存程式做会好点? 04/29 09:51