让select查询结果随机排

2022-10-29 12:23:01
内容摘要
前段时间客户提出了一个需求,就是想让查询的结果随机排序一下。查询了很多东西说的很是不明白,最后解决了问题。方案如下:
  只是在ORDER BY 后面加上一些东西。
   注:也许
文章正文

前段时间客户提出了一个需求,就是想让查询的结果随机排序一下。查询了很多东西说的很是不明白,最后解决了问题。方案如下:

  只是在ORDER BY 后面加上一些东西。

   注:也许只适用与Access哦,这个只在Access环境中测试通过。  

   "SELECT * FROM tableName ORDER BY right(cstr(rnd(-int(rnd(-timer())*100+numID)))*1000*Now(),2)"

   关键是后面的order by 子句,中间的numID必须是数据库里面已经存在的字段,加上Now()是为了随机结果更有变化性。  

  至于在SqlServer中和下面提出的一样使用NewId()函数既可

前段时间客户提出了一个需求,就是想让查询的结果随机排序一下。查询了很多东西说的很是不明白,最后解决了问题。方案如下:

  只是在ORDER BY 后面加上一些东西。

   注:也许只适用与Access哦,这个只在Access环境中测试通过。  

   "SELECT * FROM tableName ORDER BY right(cstr(rnd(-int(rnd(-timer())*100+numID)))*1000*Now(),2)"

   关键是后面的order by 子句,中间的numID必须是数据库里面已经存在的字段,加上Now()是为了随机结果更有变化性。  

  至于在SqlServer中和下面提出的一样使用NewId()函数既可


代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!