分享到:
发表于 2009-03-19 09:53:39 楼主 | |
author, id ,title a 1 title1 a 2 title2 a 3 title3 b 4 title4 c 5 title5 我现在要一个结果就是,查找id最小的author不能重复的以id升序的前3名的怎么写 如果您是 select distinct author,id,title from table order by id asc limit 3 select * from table group by author order by id asc limit 3 这两种结果就不要贴了,这两个结果都不对 author, id ,title a 1 title1 b 4 title4 c 5 title5 正确结果应该是这个 |
|
个性签名:无
|
发表于 2009-04-10 22:14:47 1楼 | |
没理解错的话,楼主说的是找出每个author所拥有的最小ID,然后将所得的ID按升序排列。列出前三个ID所代表的行。我手头没有任何真正的数据库软件,就用access来试一下,所得结果跟楼主一致。author id titlea 1 title1b 4 title4c 5 title5sql语句如下:select * from test As T1where T1.ID in(SELECT TOP 3 MinIDFROM [SELECT distinct test.author, min(test.id) as MinID FROM test group by author]. AS T1ORDER BY MinID) | |
发表于 2009-04-10 22:16:59 2楼 | |
居然没法编辑自己的帖子。 SQL语句如下: select * from test As T1 where T1.ID in ( SELECT TOP 3 MinID FROM [SELECT distinct test.author, min(test.id) as MinID FROM test group by author]. AS T1 ORDER BY MinID) 结果如下: author id title a 1 title1 b 4 title4 c 5 title5 |
|
发表于 2009-04-30 19:30:41 3楼 | |
学习了 | |
发表于 2009-12-10 20:48:02 4楼 | |
学习 | |
发表于 2009-12-23 16:27:10 5楼 | |
这样写呢 select a.author,min(a.id),b.title from test a,test b where a.id=b.id group by author limit 3; |
|
发表于 2009-12-31 23:15:50 6楼 | |
学习 | |
针对ZOL星空(中国)您有任何使用问题和建议 您可以 联系星空(中国)管理员 、 查看帮助 或 给我提意见