mysql取代rand()的高效率随机读取方法
2024-09-17 03:46:04
SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id ASC LIMIT 5;
但是这样会产生连续的5条记录。解决办法只能是每次查询一条,查询5次。即便如此也值得,因为15万条的表,查询只需要0.01秒不到。
最新文章
- ASP.NET下回车键的触发效果
- sql如何做递归层次查询
- UITextView: 响应键盘的 return 事件(收回键盘)
- 流镜像(华为S9306和S5700)
- 【读书笔记】iOS-NSDictionary与NSArray的比较
- python logging 模块
- 给eclipse装一些插件
- Esxi 5.0下配置LSI SAS RAID卡
- Android 更好的Activity生命周期回调
- nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException
- 201521123108 《Java程序设计》第八周学习总结
- h5手机查看
- 提取C3D视频特征(官方文档&;实践)
- 页面商城总结(一)——HTML部分
- virtualenv与virtualenvwrapper虚拟环境
- 阿里开源项目arthas安装使用
- 调试PHP错误
- SpringMVC(七) RequestMapping 路径中带占位符的URL
- ExtJs--05--给window组件加入功能条以及子组件获取上级或下级组件的属性和方法
- HDFS体系结构(NameNode、DataNode详解)