《Mysql必讀mysql隨機(jī)查詢?nèi)舾蓷l數(shù)據(jù)的方法》要點(diǎn):
本文介紹了Mysql必讀mysql隨機(jī)查詢?nèi)舾蓷l數(shù)據(jù)的方法,希望對您有用。如果有疑問,可以聯(lián)系我們。
MYSQL必讀在mysql中查詢5條不重復(fù)的數(shù)據(jù),使用以下:
MYSQL必讀就可以了.但是真正測試一下才發(fā)現(xiàn)這樣效率非常低.一個(gè)15萬余條的庫,查詢5條數(shù)據(jù),居然要8秒以上
搜索Google,網(wǎng)上基本上都是查詢max(id) * rand()來隨機(jī)獲取數(shù)據(jù).
MYSQL必讀但是這樣會產(chǎn)生連續(xù)的5條記錄.解決方法只能是每次查詢一條,查詢5次.即便如此也值得,因?yàn)?5萬條的表,查詢只需要0.01秒不到.
上面的語句采用的是JOIN,mysql的論壇上有人使用
MYSQL必讀我測試了一下,必要0.5秒,速度也不錯(cuò),但是跟上面的語句還是有很大差距.總覺有什么地方不正常.
于是我把語句改寫了一下.
MYSQL必讀這下,效率又提高了,查詢時(shí)間只有0.01秒
最后,再把語句完善一下,加上MIN(id)的判斷.我在最開始測試的時(shí)候,便是因?yàn)闆]有加上MIN(id)的判斷,結(jié)果有一半的時(shí)間總是查詢到表中的前面幾行.
完整查詢語句是:
MYSQL必讀最后對這兩個(gè)語句進(jìn)行分別查詢10次,
前者花費(fèi)時(shí)間 0.147433 秒
后者花費(fèi)時(shí)間 0.015130 秒
看來采納JOIN的語法比直接在WHERE中使用函數(shù)效率還要高很多.
《Mysql必讀mysql隨機(jī)查詢?nèi)舾蓷l數(shù)據(jù)的方法》是否對您有啟發(fā),歡迎查看更多與《Mysql必讀mysql隨機(jī)查詢?nèi)舾蓷l數(shù)據(jù)的方法》相關(guān)教程,學(xué)精學(xué)透。維易PHP學(xué)院為您提供精彩教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/9880.html