刚接触SQL语句不久,碰到一个难搞的题,说有一个消费表 Xlist ,记录所有人每天的消费记录,包括(id,money,date)三个字段,即客户编号、消费额、消费日期,还一个库表 Kform ,存放所有人的消费总额,包括(id,totle)两字段.
现要写SQL语句,实现将某一天的消费记录汇总,并更新到Kform表中,问题来了,在xlist表中,对于一个id可能有多条消费记录,即多次消费,那么就要将money求和再加到Kform表中,而且又不能单纯按id字段来逐一取记录,因为可能有的人那天没有消费,而且人数可能很庞大,我听说可以用游标实现逐条记录处理,可是我是新手实在是看不懂,有没有人教教我怎么弄啊
现要写SQL语句,实现将某一天的消费记录汇总,并更新到Kform表中,问题来了,在xlist表中,对于一个id可能有多条消费记录,即多次消费,那么就要将money求和再加到Kform表中,而且又不能单纯按id字段来逐一取记录,因为可能有的人那天没有消费,而且人数可能很庞大,我听说可以用游标实现逐条记录处理,可是我是新手实在是看不懂,有没有人教教我怎么弄啊
解决方案 »
- oracle11g中创建dblink怎么名字变了且不可用?
- 动态行转列 sql怎么写
- oracle中用check约束怎么检查手机号码
- 查询可访问表的问题!
- Oracle字符集UTF8,修改注册表为NLS_LANG=...UTF8,打开SQL*Plus就是乱码?
- 在solaris下装oracle8.1.5出现以下错误,请大家帮忙
- 从一个表建立另一个表
- 游标?
- servlet里有没有办法同时更新Clob字段和一般字段(不使用sql插入clob)?
- 如何快速删除在线数据
- 当MySQL中某个表有新增数据时,立即将这个数据项插入到Oracle的某个表中。满足的测试条件:在MySQL中写一条插入该表数据的SQL语句,Oracle那个表
- 求一Oralce集成的案例,外部系统如何与Oracle 的SO集成
1. 对xlist 用group by 汇总,然后逐条对kform 更新;
2. 写个触发器,就是在对xlist 有新纪录插入时就更新kfrom,这样就可以避免逐条处理的麻烦个人比较推荐后者
where id in (select id from Xlist where date = 某天)
SQL都没写明白用什么游标 数据量少用这个足矣。
set e.dable =
(select sum(d.money) money
from study_d d
where d.sid = e.eid
and d.sdate =
to_date('2012-2-11 17:14:49', 'yyyy-MM-dd HH24:mi:ss'))
where e.eid in (select d.sid
from study_d d
where d.sdate =to_date('2012-2-11 17:14:49', 'yyyy-MM-dd HH24:mi:ss'));