免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2013 | 回复: 4
打印 上一主题 下一主题

select查询求解 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-03-07 14:25 |只看该作者 |倒序浏览
各位大虾请教个问题啊,比如在下面一个表中查询罗列出ABC中的最大值,在罗列出ABC的第二大值,在罗列出ABC第三大值,等等第四大值,
id      mux     
A         10           
A          6
A          3
A          4
B         100
B          50
B          16
B          23
C          99
C          80
C          55
C          33

最大值知道怎么查询了,第2,3,4的不知道怎样写,请达人指教啊

论坛徽章:
0
2 [报告]
发表于 2008-03-09 23:36 |只看该作者
这种复杂点的 应该交给应用程序来做吧。很简单的。

论坛徽章:
0
3 [报告]
发表于 2008-03-11 12:07 |只看该作者
你是想先分组,再限制取头几条啊。
解决方案:
1。适合于组少,按每个组查询出来,最后union在一起
2。使用mysql变量,构造分组条件。分组只能取到一条记录,因为分组是唯一的,多构造几个分组字段出来,不过效率就不知道了。

3。全部查询出来,使用程序过滤
4。建表专门用于最新的几条记录

[ 本帖最后由 angeljyt 于 2008-3-11 12:10 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2008-03-14 11:33 |只看该作者
SQ楼上的大虾给出的几种方法,我会一一试验的

我现在是用一个嵌套查询语句搞定它,不过越往后(N次大)效率很低,不过也已经满足要求了

论坛徽章:
0
5 [报告]
发表于 2008-03-17 00:51 |只看该作者
怎么回事? 你这id不唯一啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP