不显示删除回复显示所有回复显示星级回复显示得分回复 求一条两个日期间计划用量的SQL,最大值,最小值以及对应日期,有点特别

cow8063 2009-10-30 04:47:53
有一表字段如下
用户,日期,读数

我要求如2009-10-1至2009-10-30日的用量,并要求最大值 ,最小值,以及对应的日期
用量等于 30号读数-1号读数,我用以下语句可以实现可以

select AREAGUID,max(ddate) as maxddate,min(ddate) as minddate,max(METERNLLJ)-min(METERNLLJ) as MeterNLLJ,max(METERNLLJ) as aa,min(METERNLLJ) as bb from ( select AREAGUID from TWater where 
(to_char(DDate,'yyyy-mm-dd')='2009-10-1' or to_char(DDate,'yyyy-mm-dd')='2009-10-30') and AreaGuid = 407) xx group by AREAGUID


但有一个问题,如果我1号的读数为1000,30号的读数为500,即1号>30号的读数(有很多这样的数),那么我取日期出来就错了,变成相反的了

应该如何修改一下呢。谢谢
...全文
63 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxx_tt 2009-10-31
  • 打赏
  • 举报
回复

select a.AREAGUID,--用户号
a.umax,--最大值
a.umin,--最小值
b.ddate umaxd,--最大值日期
c.ddate umind,--最小值日期
b.METERNLLJ-c.METERNLLJ umg --用量
from (select AREAGUID,max(METERNLLJ) umax,min(METERNLLJ) umin
from TWater
group by AREAGUID) a,
(select a.AREAGUID,a.METERNLLJ,a.ddate
from TWater a,
(select AREAGUID,max(ddate) ddate
from TWater
group by AREAGUID) b
where a.AREAGUID = b.AREAGUID
and a.ddate = b.ddate
) b,
(select a.AREAGUID,a.METERNLLJ,a.ddate
from TWater a,
(select AREAGUID,min(ddate) ddate
from TWater
group by AREAGUID) b
where a.AREAGUID = b.AREAGUID
and a.ddate = b.ddate
)c
where a.AREAGUID = b.AREAGUID
and a.AREAGUID = c.AREAGUID;

shiyiwan 2009-10-30
  • 打赏
  • 举报
回复
min-max
cow8063 2009-10-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 sxx_tt 的回复:]
你用max-min减出来当然是正的500
[/Quote]
是呀,有什么办法改进一下的
sxx_tt 2009-10-30
  • 打赏
  • 举报
回复
你用max-min减出来当然是正的500
cow8063 2009-10-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sxx_tt 的回复:]
你的最外层的from都没有ddate,METERNLLJ,第一个select从哪取?
[/Quote]

上面忘记写了,实际上有的
sxx_tt 2009-10-30
  • 打赏
  • 举报
回复
你的最外层的from都没有ddate,METERNLLJ,第一个select从哪取?
cow8063 2009-10-30
  • 打赏
  • 举报
回复
我的意思是,比如我有两条记录
用户 读数 日期
1 1000 2009-10-1
1 500 2009-10-30
我查出的数据应该为
用户 用量 最大 最大对应日期 最小 最小对应日期
1 -500 1000 2009-10-1 500 2009-10-30

但上面SQL实际查出是
用户 用量 最大 最大对应日期 最小 最小对应日期
1 500 1000 2009-10-30 500 2009-10-1

不对呀。。。日期不对应,而且用量也算错了
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧