免费注册 查看新帖 |

Chinaunix

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

如何做这个聚合函数? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-10-12 01:22 |只看该作者 |倒序浏览
对于使用聚合函数的查询LIMIT就不起作用了。

那么如何在使用聚合函数的查询中,对返回条数进行过滤:如求前50项的数值和?

论坛徽章:
0
2 [报告]
发表于 2006-10-12 11:51 |只看该作者
原帖由 ftInternet 于 2006-10-12 01:22 发表
对于使用聚合函数的查询LIMIT就不起作用了。

那么如何在使用聚合函数的查询中,对返回条数进行过滤:如求前50项的数值和?


目前用用户变量的方式解决了。如果直接能SQL出来就更好。

论坛徽章:
0
3 [报告]
发表于 2006-10-12 18:28 |只看该作者
哪个函数?

论坛徽章:
0
4 [报告]
发表于 2006-10-12 20:17 |只看该作者
原帖由 yejr 于 2006-10-12 18:28 发表
哪个函数?


create table test_table
(
    id smallint(6) not null auto_increment,
    num int(6)
   PRIVATE KEY(id)
);
例如: select cout(*), sum(num) from test_table LIMIT 5, 10;

论坛徽章:
0
5 [报告]
发表于 2006-10-13 00:11 |只看该作者
用子查询吧,类似: select count(*), sum(column) from (select * from tb limit 5,10) as tmp;
limit 是在取得执行结果后向用户输出时才起作用的。

论坛徽章:
0
6 [报告]
发表于 2006-10-13 06:07 |只看该作者
COUNT() 不行,但是 SUM() 好像是可以用 LIMIT 的。

论坛徽章:
0
7 [报告]
发表于 2006-10-13 08:52 |只看该作者
不清楚lz想干啥

论坛徽章:
0
8 [报告]
发表于 2006-10-13 09:08 |只看该作者
原帖由 yejr 于 2006-10-13 08:52 发表
不清楚lz想干啥


做分页查询时的统计。例如:查询表table中每50行的统计数据。

目前是通过用户变量搞的。如果可以直接使用聚合函数就更好。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP