首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

怎么按一列取平均值,然后把平均值插到列里

2013-12-10 
如何按一列取平均值,然后把平均值插到列里?表格如下rownumtimetypevalue101月aaa02 01月 bbb03 01月ccc04

如何按一列取平均值,然后把平均值插到列里?
表格如下

rownum  time   type    value
1  01月aaa0
2 01月 bbb     0
3 01月ccc0
4 02月aaa0
5  02月bbb0
6        02月ccc0
7 03月aaa0
8   03月bbb0
9 03月ccc0
10  04月aaa0
11 04月bbb0
12 04月ccc0


我想得到的查询结果是:
101月aaa2
201月 bbb     2
301月ccc2
        01月    平均值  2
402月aaa4
502月bbb6
602月ccc8
        02月    平均值  9
703月aaa5
803月bbb10
903月ccc15
        03月    平均值  10
1004月aaa0
1104月bbb0
1204月ccc0
        04月    平均值  0
[解决办法]

insert into table select null,time,'avg',avg(value)  from table group by time


[解决办法]
引用:
table也是个查询sql,如下:

select t.time, t.type, t.value from (select.............................................................................................................................) tt

怎么在这个查询结果里,再添加个每月的平均值?

1月   类型1    值
1月   类型2    值
1月   类型3    值
1月   平均值   值
2月   类型1    值
2月   类型2    值
2月   类型3    值
2月   平均值   值

select * from 
(select null,time,'avg',avg(value)  from table group by time
union all
select * from table
) t order by t.time,type

热点排行