如何通過RAND()函數(shù)優(yōu)化MySQL的順序?我想優(yōu)化我的查詢,所以我研究mysql-slow.log.我的大多數(shù)緩慢查詢都包含ORDER BY RAND()..我無法找到真正的解決辦法來解決這個(gè)問題。有一個(gè)可能的解決方案MySQLPerformanceBlog但我覺得這還不夠。對(duì)于優(yōu)化不佳的(或經(jīng)常更新的、用戶管理的)表,它不能工作,或者我需要運(yùn)行兩個(gè)或多個(gè)查詢才能選擇PHP-產(chǎn)生的隨機(jī)行。這個(gè)問題有什么解決辦法嗎?一個(gè)虛擬的例子: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
添加回答
舉報(bào)
0/150
提交
取消