日期:2014-05-17  浏览次数:20853 次

sql 同一条记录 各个字段比较 取最大值
数据是这样的

A       B      C      D       E       F
记录1    1      3      8       7       6
记录1    4      8      8       6       4
记录2    1      3      8       7       6
记录3    1      9      4       7       8
记录4    1      3      8       7       6
记录4    1      3      8       7       6
我想要的是: 同一条记录(A字段对应的值无重复的情况)取B,C,D,E,F中最大的值,A字段对应的值有重复的情况,那么取重复的x条记录中B,C,D,E,F字段的最大值 。  不知道表述清楚没....
sql 取最大值

------解决方案--------------------

select a,max(maxvalue)maxvalue from(
select *,maxvalue=(select max(col) from(select a.b[col] union all select a.c union all select a.d union all select a.e union all select a.f)t) from tb a
)tt group by a