首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Informix >

求:update 语句(每天执行一次的sql)解决思路

2012-03-28 
求:update 语句(每天执行一次的sql)表的结构--------------------------------------------DROP tabletest

求:update 语句(每天执行一次的sql)
表的结构 
-------------------------------------------- 
DROP table test100; 
CREATE TABLE test100 
  ( 
date date, 
bh varchar(10),--编号 
bqye decimal(16,2),--本期余额 
sqye decimal(16,2)--上期余额 

  ); 
-------------------------------------- 
数据 
date bh bqye sqye 
2009-12-17 10001 12.00 0 
2009-12-17 10002 100.00 0 
2009-12-17 10003 500.00 0 
2009-12-17 10004 200.00 0 
2009-12-17 10005 200.00 0 
2009-12-17 10006 400.00 0 
  。。。 。。。  
2009-12-18 10001 XXX 12.00  
2009-12-18 10002 XXX 100.00  
2009-12-18 10003 XXX 500.00  
2009-12-18 10004 XXX 200.00  
2009-12-18 10005 XXX 200.00  
2009-12-18 10006 XXX 400.00  

问 
每天数据为8k多行数据 
把2009-12-17的bqye(本期余额)更新到 2009-12-18上期余额上面 
date 时间是用程序控制的,sql可以把时间date写死,
球每天执行一次的sql
还有补充,我的是informix数据库,

[解决办法]
update test100 t
set sqye=(select bqye from test100 where date=2009-12-17 and bh=t.bh )
where date=2009-12-18
[解决办法]
什么表啊,把dba气死
[解决办法]
up
[解决办法]
疑问,你把前17号的数据更新到18号上,那么17号的数据保留还是删除?
统计bqye
1.select bh,sum(bqye) as bqye test100 where date in('','') group by 1
更新
2.update test100 b set bh (select sum(a.bqye) as bqye test100 a where a.date in('','')) where date = '' and a.bh = b.bh
估计第2个语句不行,我觉得1条语句不好写可以写多条,我觉得是否可以采用临时表来解决。

热点排行