【WordPress相关】SQL 在使用 GROUP BY 进行归类汇总的时候直接获取总数
作品分类:Wordpress相关 汇总 归类 总数 归类 汇总 总数 获取 SQL
SQL 在使用 GROUP BY 进行归类汇总的时候直接获取总数,
SQL 中我们一般使用 GROUP BY 进行归类汇总,比如微信机器人高级版对消息类型中进行汇总的 SQL 为:
SELECT COUNT( * ) AS count, MsgType FROM wp_weixin_messages GROUP BY MsgType
如果按照数量排序:
SELECT COUNT( * ) AS count, MsgType FROM wp_weixin_messages GROUP BY MsgType ORDER BY count DESC
如果要计算每种类型的比例,又要使用一条新的 SQL 到数据库里面查询一次,有没有办法在使用 GROUP BY 进行归类汇总的时候直接获取总数,查询了下 MySQL 的说明文档,我们可以使用 WITH ROLLUP。
<script async src=”//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”></script> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>
SELECT COUNT( * ) AS count, MsgType FROM wp_weixin_messages GROUP BY MsgType WITH ROLLUP
这样获取的一个字段就是总数,但是名称(MsgType)为 null,我们把他设置为 total。
SELECT COUNT( * ) AS count, IFNULL( MsgType, 'total' ) AS MsgType FROM wp_weixin_messages GROUP BY MsgType WITH ROLLUP
但是使用 WITH ROLLUP 有个不好的地方,不能在进行 ORDER BY 了。
本站推荐使用的主机:,国外主机建议使用。
原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/32811.html