求一个分组统计方法

y63964632 2009-04-25 11:40:25
表数据:
日期 产油量 产水量
2008-1-1 20 14
2008-1-2 15 15
2008-1-3 25 16
2008-1-4 14 7
2008-1-5 15 7
2008-1-6 25 5

想得到一些产油量 和产水量的对比数据

产油量 产水量
20 14 08-1-1
25 29 08-1-2 前俩天的和
60 45 08-1-3 前三天的和
74 52 08-1-4 前4天和和
89 59 08-1-5 前5天和
114 64 08-1-6 前6天的和


由上面的表如何写得到下面的分组统计sql

...全文
93 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
superhsj 2009-04-25
  • 打赏
  • 举报
回复
1楼是正确的。另外也可以用分析函数去实现
pinklotus 2009-04-25
  • 打赏
  • 举报
回复
楼上用的是表自连接的查询,上面的语句应该可以满足你的需求
bw555 2009-04-25
  • 打赏
  • 举报
回复
一个表当两个表用,a和b是表的重命名

select a.日期,sum(b.产油量),sum(b.产水量)
from tab as a,tab as b
where b.日期 <=a.日期
group by a.日期

[Quote=引用 2 楼 y63964632 的回复:]
引用 1 楼 bw555 的回复:
select a.日期,sum(b.产油量),sum(b.产水量)
from tab a,tab b
where b.日期 <=a.日期
group by a.日期


只有上面的一个表 哪里来表B?

我想由上面表的数据得到下面的这样一个表 的查询语句~
[/Quote]
ty_tarena_pger 2009-04-25
  • 打赏
  • 举报
回复
from tab a,tab b //把一个表当两张表来用
y63964632 2009-04-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bw555 的回复:]
select a.日期,sum(b.产油量),sum(b.产水量)
from tab a,tab b
where b.日期 <=a.日期
group by a.日期
[/Quote]

只有上面的一个表 哪里来表B?

我想由上面表的数据得到下面的这样一个表 的查询语句~
bw555 2009-04-25
  • 打赏
  • 举报
回复
select a.日期,sum(b.产油量),sum(b.产水量)
from tab a,tab b
where b.日期<=a.日期
group by a.日期
y63964632 2009-04-25
  • 打赏
  • 举报
回复
任务紧张 模块完成了 自己分析下~
y63964632 2009-04-25
  • 打赏
  • 举报
回复
谢谢 没有仔细看~

17,377

社区成员

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

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