[SQL ] 隨機查詢多列

看板Database作者 (我是CQD,不是cqd)時間16年前 (2009/03/18 13:22), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串1/1
我現在使用PHP搭配MySQL,需要在大約萬筆的資料中隨機抽取多列(ex:100列) 資料中有流水號ID可用。 一般看到的用法都是搭配 order by rand() ,但印象中此法效率並不好。 我想到的作法是先取出流水號的最大值M,然後用PHP隨機產生N個小於M的數字 之後下「select * from table where ID in (N1,N2....)」 不過此法似乎還是要在index中做N次搜尋。不知道有沒有更有效率的作法呢? -- 這閃電拳能射出雷射光,威力每平方公分一萬億瓦特 威力無比,拳到之處,攻無不克 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.249.163.125

03/19 02:15, , 1F
可以先抓出id在php隨機抓100個在去資料庫撈
03/19 02:15, 1F

03/19 22:23, , 2F
我就是這樣想,不知道有沒有更有效率的作法
03/19 22:23, 2F

03/23 17:21, , 3F
怎麼說都沒用..實際把 explain 拿出來用最實際....
03/23 17:21, 3F
文章代碼(AID): #19m8K5_G (Database)