日期:2014-05-16  浏览次数:20811 次

求教该如何写oracle语句
有一个表,包含字段id,num,time等字段。里面数据很多,例如:
id     num     time
1        2.31    2013-01-01 00:00:00
1        3.12    2013-01-01 00:05:00
1        3.82    2013-01-01 00:10:00
1        4.23    2013-01-01 00:15:00
2        1.20    2013-01-01 00:00:00
2        1.20    2013-01-01 00:05:00
2        1.20    2013-01-01 00:10:00
......
同一个id的num数据是几分钟一上传,有些id的num字段在增加,有些则没有增加,现在想要根据这张表查找num字段还在增加的id。不知语句该如何写,求大虾帮忙
------解决方案--------------------
这个你得要个参考时间段。。是多久有没有变化或者多久有没有增长。。
直接判断全部是判断不出来的。。
给你一个思路吧。。

select decode(max(num)-min(num),0,'没变','变化') from 表 group by id


引用:
有一个表,包含字段id,num,time等字段。里面数据很多,例如:
id     num     time
1        2.31    2013-01-01 00:00:00
1        3.12    2013-01-01 00:05:00
1        3.82    2013-01-01 00:10:00
1        4.23    2013-01-01 00:15:00
2        1.20    2013-01-01 00:00:00
2        1.20    2013-01-01 00:05:00
2        1.20    2013-01-01 00:10:00
......
同一个id的num数据是几分钟一上传,有些id的num字段在增加,有些则没有增加,现在想要根据这张表查找num字段还在增加的id。不知语句该如何写,求大虾帮忙

------解决方案--------------------
select distinct(a.id) from aa a,
(select id,decode(max(num)-min(num),0,0,1) as num_sec from aa group by id) b
where b.num_sec=1 and a.id=b.id;