MySQL-mysql 分组查询数据时,如何获得用于分页的总记录数?

发布于 2017-01-16 07:23:17 字数 243 浏览 1177 评论 2

主要是想查询符合条件的记录总数,

查询数据使用的sql为:

SELECT SUBSTRING_INDEX(`url`,'/',3) AS host,COUNT(*) AS count FROM `tab` WHERE `type`=4 GROUP BY host HAVING(count >= 5) ORDER BY count desc LIMIT 0,10

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

晚风撩人 2017-09-21 17:14:08

我感觉第二种没有什么不好的呀

想挽留 2017-09-14 22:48:16

我只知道第四种……原来还有前几种啊……

改一下表的结构,加一个host字段,每次插入的时候就预先把host先算出来。然后给host加个索引。这样group by的效率应该也不是太低了吧

效率还不行的话再建一个子表,专门存每个host后面有多少个数,每次insert的时候更新。但这样insert和delete的效率又下降了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文