跪求大神指教!!
用的是oracle。初次接触存储过程 快死了
根据编号的不同 按编号把每天电流想加,每天还的判断当天是不是这个月的最后一天,如果是当月最后一天,按编号把这个月的电流数据想加,判断当天是不是这一年的最后一天,按编号把这一年的电流数据想加编号 时间 电流 父编号 标识位
100001 2016/7/11 13:02 0.1 1000 0
100001 2016/7/11 13:03 0.1 1000 0
100001 2016/7/11 13:04 0.1 1000 0
100001 2016/7/11 13:05 0.1 1000 0
100001 2016/7/11 13:06 0.1 1000 0
100001 2016/7/11 13:07 0.1 1000 0
100001 2016/7/11 13:08 0.1 1000 0
100001 2016/7/11 13:09 0.1 1000 0
100001 2016/7/11 13:10 0.1 1000 0
100001 2016/7/11 13:11 0.1 1000 0
100001 2016/7/11 13:12 0.1 1000 0
100001 2016/7/11 13:13 0.1 1000 0
100001 2016/7/11 13:14 4.8 1000 0
100001 2016/7/11 13:15 5 1000 0
100001 2016/7/11 13:16 6.5 1000 0
100001 2016/7/11 13:17 6.4 1000 0
100001 2016/7/11 13:18 6 1000 0
100001 2016/7/11 13:19 6 1000 0
100001 2016/7/11 13:20 6 1000 0
100002 2016/7/11 13:21 6 1000 0
100003 2016/7/11 13:22 5.6 1000 0
100004 2016/7/11 13:23 5.8 1000 0
100005 2016/7/11 13:24 5.6 1000 0
100006 2016/7/11 13:25 5.6 1000 0
100006 2016/7/11 13:26 5.6 1000 0
100006 2016/7/11 13:27 5.6 1000 0
100006 2016/7/11 13:28 5.6 1000 0
100006 2016/7/11 13:29 0 1000 0
100006 2016/7/11 13:30 5.5 1000 0
100011 2016/7/11 13:31 5.5 1001 0
100011 2016/7/11 13:32 0 1001 0
100011 2016/7/11 13:33 5.5 1001 0
100021 2016/7/11 13:34 5.5 1002 0
100022 2016/7/11 13:35 5.5 1002 0
用的是oracle。初次接触存储过程 快死了
根据编号的不同 按编号把每天电流想加,每天还的判断当天是不是这个月的最后一天,如果是当月最后一天,按编号把这个月的电流数据想加,判断当天是不是这一年的最后一天,按编号把这一年的电流数据想加编号 时间 电流 父编号 标识位
100001 2016/7/11 13:02 0.1 1000 0
100001 2016/7/11 13:03 0.1 1000 0
100001 2016/7/11 13:04 0.1 1000 0
100001 2016/7/11 13:05 0.1 1000 0
100001 2016/7/11 13:06 0.1 1000 0
100001 2016/7/11 13:07 0.1 1000 0
100001 2016/7/11 13:08 0.1 1000 0
100001 2016/7/11 13:09 0.1 1000 0
100001 2016/7/11 13:10 0.1 1000 0
100001 2016/7/11 13:11 0.1 1000 0
100001 2016/7/11 13:12 0.1 1000 0
100001 2016/7/11 13:13 0.1 1000 0
100001 2016/7/11 13:14 4.8 1000 0
100001 2016/7/11 13:15 5 1000 0
100001 2016/7/11 13:16 6.5 1000 0
100001 2016/7/11 13:17 6.4 1000 0
100001 2016/7/11 13:18 6 1000 0
100001 2016/7/11 13:19 6 1000 0
100001 2016/7/11 13:20 6 1000 0
100002 2016/7/11 13:21 6 1000 0
100003 2016/7/11 13:22 5.6 1000 0
100004 2016/7/11 13:23 5.8 1000 0
100005 2016/7/11 13:24 5.6 1000 0
100006 2016/7/11 13:25 5.6 1000 0
100006 2016/7/11 13:26 5.6 1000 0
100006 2016/7/11 13:27 5.6 1000 0
100006 2016/7/11 13:28 5.6 1000 0
100006 2016/7/11 13:29 0 1000 0
100006 2016/7/11 13:30 5.5 1000 0
100011 2016/7/11 13:31 5.5 1001 0
100011 2016/7/11 13:32 0 1001 0
100011 2016/7/11 13:33 5.5 1001 0
100021 2016/7/11 13:34 5.5 1002 0
100022 2016/7/11 13:35 5.5 1002 0
解决方案 »
- oracle 字符转截取
- 跪求一个储存过程写法!!望大虾给个写法
- 怎么删除其他表外键对应表A主键的A表一条记录?
- oracle 隐式转换在哪个阶段转换?
- 删除了1个数据文件,没有备份,如何打开数据库?
- 如何测试我的oracle客户端能连上服务器?
- 初学者,2个简单的小问题?
- 触发器问题
- 在库里是空值, 但是rs.getString();时, 却是null 怎么回事?
- 各位大侠,深圳哪里可以买到DEVELOP2000光盘或者网上哪里有下载,和ORACLE9I搭配的开发工具是DEVELOP2000吗有没有更好的?
- 求救!在线等 谢谢各位大神了!!
- 为什么oracle静默安装建库之后,生成的tnsname.ora 文件service_name参数值用的是GDBNAME而不是SID?
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy') rq,sum(dl) dl,'' fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy')) a
left join
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm') rq,sum(dl) dl,max(to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy')) fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm')) b
on a.id=b.id and a.rq = substr(b.rq,1,4)
left join
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm-dd') rq,sum(dl) dl,max(to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm')) fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm-dd')) c
on a.id=c.id and b.rq = substr(c.rq,1,7)
order by id,a.rq,b.rq,c.rq
不知道是不是你想要的结果
编号:id 时间:sj 电流:dl 父编号:fbh 标识位:flag
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy') rq,sum(dl) dl,'' fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy')) a
left join
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm') rq,sum(dl) dl,max(to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy')) fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm')) b
on a.id=b.id and a.rq = substr(b.rq,1,4)
left join
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm-dd') rq,sum(dl) dl,max(to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm')) fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm-dd')) c
on a.id=c.id and b.rq = substr(c.rq,1,7)
order by id,a.rq,b.rq,c.rq
不知道是不是你想要的结果
编号:id 时间:sj 电流:dl 父编号:fbh 标识位:flag
额 我是需要写个存储过程 不是sql啊 现在统计的数据是要往数据库插入的
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy') rq,sum(dl) dl,'' fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy')) a
left join
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm') rq,sum(dl) dl,max(to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy')) fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm')) b
on a.id=b.id and a.rq = substr(b.rq,1,4)
left join
(select id,to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm-dd') rq,sum(dl) dl,max(to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm')) fbh from tab
group by id, to_char(to_date(sj,'yyyy-mm-dd hh24:mi'),'yyyy-mm-dd')) c
on a.id=c.id and b.rq = substr(c.rq,1,7)
order by id,a.rq,b.rq,c.rq
不知道是不是你想要的结果
编号:id 时间:sj 电流:dl 父编号:fbh 标识位:flag
额 我是需要写个存储过程 不是sql啊 现在统计的数据是要往数据库插入的
insert into table select ……
自行百度~