我查询存储整数的一个table,
查询的形式如下,a b个数是相等的,动态的,我想在a和b的后面求a b平均值,怎么做简单点呢select a a1,a a2,a a3,b b1,b b2,b b3结果形式select a a1,a a2,a a3,a_avg,b b1,b b2,b b3,b_avg我是这样写的,不过感觉有点罗索select a a1,a a2,a a3,(a+a+a)/3 a_avg,b b1,b b2,b b3,(b+b+b)/3 b_avg
上面的a b 是这样的形式:max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), a))
max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), b))
查询的形式如下,a b个数是相等的,动态的,我想在a和b的后面求a b平均值,怎么做简单点呢select a a1,a a2,a a3,b b1,b b2,b b3结果形式select a a1,a a2,a a3,a_avg,b b1,b b2,b b3,b_avg我是这样写的,不过感觉有点罗索select a a1,a a2,a a3,(a+a+a)/3 a_avg,b b1,b b2,b b3,(b+b+b)/3 b_avg
上面的a b 是这样的形式:max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), a))
max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), b))
select a a1,a a2,a a3,avg(a) over() a_avg,b b1,b b2,b b3,avg(b) over() b_avg是要这样的?
比如我得结果集有一行 a1 a2 a3 b1 b2 b3
1 2 3 1 2 3
我想最后的结果形式
a1 a2 a3 a_avg b1 b2 b3 b_avg
1 2 6 3 4 5 3 4
select a a1,a a2,a a3,(a+a+a)/3 a_avg,b b1,b b2,b b3,(b+b+b)/3 b_avg
如果t.date等于20110327返回a, 不等于20110327返回空?
decode()只有一个返回值,然后max()取什么的最大?max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), a))
max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), b))
我选取一段时间,每天的时间对应好多a,这是我取某一天的最大的a
max(decode(t.date, to_date('2011/03/27', 'YYYY/MM/DD'), a))