SQL语句写法
table1:
column1 column2 column3
1 2 2
1 3 1
2 4 3
2 5 4
使用
select column1,max(column2) as column2 from table1 group by column1可以得到如下的结果
column1 column2
1 3
2 5
但要求同时显示对应的column3列的数据,即
column1 column2 column3
1 3 1
2 4 4
多谢!
问题点数:50、回复次数:7Top
1 楼nmyou()回复于 2003-08-01 16:04:08 得分 0
错了,要求的结果是
column1 column2 column3
1 3 1
2 5 4
Top
2 楼nmyou()回复于 2003-08-01 16:05:27 得分 0
错了,是
column1 column2 column3
1 3 1
2 5 4
Top
3 楼tj_dns(愉快的登山者)回复于 2003-08-01 16:07:40 得分 15
select * from table1 A
where column2 = (select max(column2) from table1 where column1 = A.column1)Top
4 楼CrazyFor(冬眠的鼹鼠)回复于 2003-08-01 16:07:42 得分 10
select * from table1 aa where not exists(select 1 from table1 bb where aa.column1=bb.column1 and aa.column2<bb.column2)Top
5 楼playyuer(退休干部 卧鼠藏虫)回复于 2003-08-01 16:11:43 得分 15
select *
from table1 a
where column2 = (select max(column2)
from table1
where column1 = a.column1)
Top
6 楼nmyou()回复于 2003-08-01 17:01:34 得分 0
多谢各位.
以上在table1为实际存在表时可以,但如果table1是经过复杂的查询得到的临时结果,而不是实际存在的表时又该如何?
Top
7 楼zjcxc(邹建)回复于 2003-08-01 21:44:07 得分 10
先将结果存储到临时表中,
再用上面的方法进行处理.Top
8 楼nmyou()回复于 2003-08-02 09:25:07 得分 0
多谢Top



