栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

当查询具有GROUP BY时,如何获得总计的百分比?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

当查询具有GROUP BY时,如何获得总计的百分比?

对于大型集合,JOIN的性能可能优于子查询。

SELECt ma.actor     , COUNT(1) AS total     , COUNT(1) / t.cnt * 100 AS `percentage`  FROM movies_actors ma CROSS  JOIN (SELECt COUNT(1) AS cnt FROM movies_actors) t GROUP    BY ma.actor     , t.cnt

对于大型集合,当返回很大比例的行时,JOIN操作通常可以胜过子查询。在您的情况下,它不是相关子查询,因此MySQL不必多次执行该子查询,因此它可能没有任何区别。

注意

COUNT(1)
…的非粉丝,我们可以
COUNT(1)
COUNT(*)
或替换任何和所有出现的或
IFNULL(SUM(1),0)
获得同等的结果。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/408359.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号