SQL中把数据写入临时表然后修改日期后在写入正式表中。

INSERT INTO pos_t_saleflow ( oper_date,trade_date, item_clsno, pool_flag, item_subno ) VALUES ('2015-09-05 07:47:30.847','20150905','310306','Y','6924951480572')
INSERT INTO pos_t_saleflow ( oper_date, trade_date, item_clsno, pool_flag, item_subno,) VALUES ('2015-09-05 07:50:59.887','20150905','300103','Y','6927941011800')

如这些数据,批量写入临时表,然后批量修改其中'2015-09-05 07:47:30.847' 前面的日期 如'2015-09-06 07:47:30.847' 和'20150905' 变成'20150906' 符合条件的都改变日期写入临时表,然后在插入正式表,在写入临时表修改到'20150907' 然后在写入到正式表,如此循环,改如何实现?

如果只是时间改变的话,可以把写入临时表的字段减少,不用时间字段,然后使用时间循环处理。
先是写入临时表的数据:
INSERT INTO pos_t_saleflow ( item_clsno, pool_flag, item_subno )
VALUES ('310306','Y','6924951480572')

然后循环时间

declare @startdate datetime
set @startdate = '2015-09-05'
while @startdate <= '2015-10-11'
begin
insert into 正式表 ( oper_date,trade_date, item_clsno, pool_flag, item_subno )
select @startdate,@startdate, item_clsno, pool_flag, item_subno
from pos_t_saleflow
set @startdate = dateadd(dd,1,@startdate)
end追问

哦 谢谢 我试试

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答