如何通过RAND()函数优化MySQL的顺序?我想优化我的查询,所以我研究mysql-slow.log.我的大多数缓慢查询都包含ORDER BY RAND()..我无法找到真正的解决办法来解决这个问题。有一个可能的解决方案MySQLPerformanceBlog但我觉得这还不够。对于优化不佳的(或经常更新的、用户管理的)表,它不能工作,或者我需要运行两个或多个查询才能选择PHP-产生的随机行。这个问题有什么解决办法吗?一个虚拟的例子:SELECT accomodation.ac_id,
accomodation.ac_status,
accomodation.ac_name,
accomodation.ac_status,
accomodation.ac_imagesFROM accomodation, accomodation_categoryWHERE accomodation.ac_status != 'draft'
AND accomodation.ac_category = accomodation_category.acat_id AND accomodation_category.acat_slug != 'vendeglatohely'
AND ac_images != 'b:0;'ORDER BY
RAND()LIMIT 1
添加回答
举报
0/150
提交
取消