您的位置:首页 > 数据库 > MySQL

mysql 随机RAND和GROUP BY优化

2016-07-23 12:00 441 查看
最近看到一篇文章关于mysql的优化的,其中两个块内容平时用到的优化方法,记录和分享一下

group by 优化

SELECT goods_id,count(*) FROM t GROUP BY goods_id;

默认情况下,MySQL对所有GROUP BY col1,col2…的字段进行排序。如果查询包括GROUP BY,想要避免排序结果的消耗,则可以指定ORDER BY NULL禁止排序。

修改成

SELECT goods_id,count(*) FROM t GROUP BY goods_id ORDER BY NULL;

RAND随机优化

SELECT * FROM t1 WHERE 1=1 ORDER BY RAND() LIMIT 4;

MySQL不支持函数索引,会导致全表扫描

修改成

SELECT * FROM t1 WHERE id >= CEIL(RAND()*1000) LIMIT 4;


QQ交流群:136351212
查看原文:http://www.phpsong.com/2264.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: