这个查询怎么写?
to竹子:简单的问题应该首先查询,但是我不知道这个问题如何选择关键字,所以这么简单的问题也不得不发出来了,斑竹费力了!
这个查询怎么写?
表结构和数据如下,左边的数字为行的号码,表中并不出现
c1字符 c2数字 c3字符
1 a 1 fds
2 b 1 xxx
3 b 2 asfds
4 b 5 afd
5 c 3 sss
6 a 2 fdsaf
7 c 4 fdsre
在c1相同时,选择c2最小的一行
结果为第 1,2,5
怎么写sql语句?
问题点数:100、回复次数:9Top
1 楼Francky(寒星)回复于 2001-12-22 16:23:11 得分 10
select c1,mix(c2) from table group by c1Top
2 楼Francky(寒星)回复于 2001-12-22 16:27:29 得分 10
写错了。
select * from table a where (c1,c2) in (select c1,min(c2) from table b group by c1)Top
3 楼sunyuzhe(sunyuzhe.363.net)回复于 2001-12-22 16:32:37 得分 10
关注关注,upupTop
4 楼icystone(石冰)回复于 2001-12-22 17:27:56 得分 10
不可以!Top
5 楼icystone(石冰)回复于 2001-12-22 17:41:59 得分 10
如果能保证在c1相同时c2最小的只有一个的话试一试下面的方法
select c1,min(c2),min(c3),min(IDX) from table group by c1 Top
6 楼Gongshl(阿单)回复于 2001-12-22 17:47:45 得分 10
你要什么样的结果呢,如果只是C2的话,呵呵
SELECT min(C2) FROM table GROUP BY c1 Top
7 楼bluepower2008(蓝色力量)回复于 2001-12-22 18:03:45 得分 20
select * from table a,(select c1,min(c2) as c2 from table group by c1) as b where a.c1 = b.c1 and a.c2 = b.c2Top
8 楼icystone(石冰)回复于 2001-12-22 19:37:50 得分 20
楼上的方法很好。我班门弄斧,请高人指点:
select * from TABLE where IDX in(select a from(select select c1,min(c2),min(IDX)as a from TABLE group by c1)as temp)Top
9 楼heyongzhou()回复于 2001-12-23 11:20:37 得分 0
多谢了Top




