讓select查詢結(jié)果隨機(jī)排

字號(hào):


    前段時(shí)間客戶提出了一個(gè)需求,就是想讓查詢的結(jié)果隨機(jī)排序一下。查詢了很多東西說的很是不明白,最后解決了問題。方案如下:
    只是在ORDER BY 后面加上一些東西。
    注:也許只適用與Access哦,這個(gè)只在Access環(huán)境中測試通過。
    "SELECT * FROM tableName ORDER BY right(cstr(rnd(-int(rnd(-timer())*100+numID)))*1000*Now(),2)"
    關(guān)鍵是后面的order by 子句,中間的numID必須是數(shù)據(jù)庫里面已經(jīng)存在的字段,加上Now()是為了隨機(jī)結(jié)果更有變化性。
    至于在SqlServer中和下面提出的一樣使用NewId()函數(shù)既可。