读书人

针对a列的不同值取b列对应的最大值,

发布时间: 2012-03-28 15:40:03 作者: rapoo

针对a列的不同值,取b列对应的最大值
例如:
tableA
fieldA fieldB
1 2
1 3
2 1
2 4
2 2
1 1
2 4

最后希望得到:
1 3
2 4

这个应当如何用一条语句完成?

[解决办法]
select fieldA , max(fieldB) fieldB from tablea group by fielda
[解决办法]
--如果只有这两个列,直接分组求MAX即可.

SQL code
create table tableA(fieldA int,fieldB int)insert into tablea values(1 ,2)insert into tablea values(1 ,3)insert into tablea values(2 ,1)insert into tablea values(2 ,4)insert into tablea values(2 ,2)insert into tablea values(1 ,1)insert into tablea values(2 ,4)goselect fieldA , max(fieldB) fieldB from tablea group by fieldadrop table tablea/*fieldA      fieldB      ----------- ----------- 1           32           4(所影响的行数为 2 行)*/ 

读书人网 >SQL Server

热点推荐