ID延续的情况下(注重不能带where,否则效果欠好):

SELECT *

FROM `mm_account` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `mm_account`)) AS id) AS t2

WHERE t1.id >= t2.id

ORDER BY t1.id ASC LIMIT 4;

ID不延续的情况下:

SELECT * FROM `mm_account`

WHERE id >= (SELECT floor(RAND() * (SELECT MAX(id) FROM `mm_account`))) and city=”city_91″ and showSex=1

ORDER BY id LIMIT 4;

假设你的表叫做mm_account,并且有一个字段叫id。最快的方式如下(随机获取5条):

SELECT * FROM mm_account WHERE id >= ((SELECT MAX(id) FROM mm_account)-(SELECT MIN(id) FROM mm_account)) * RAND() + (SELECT MIN(id) FROM mm_account) limit 5;

若是带where语句,上面就不适合了。带where语句请看下面:

SELECT *

FROM `mm_account` AS t1 JOIN (SELECT ROUND(RAND() * (

(SELECT MAX(id) FROM `mm_account` where id<1000 )-(SELECT MIN(id) FROM `mm_account` where id<1000 ))+(SELECT MIN(id) FROM `mm_account` where id<1000 )) AS id) AS t2

WHERE t1.id >= t2.id

ORDER BY t1.id LIMIT 5;

原文链接:https://www.cnblogs.com/hellohorld/p/12896043.html

本站声明:网站内容来源于网络,若有侵权,请联系我们,我们将及时处理。

mysql 随机槽_mysql怎样高效率随机获取n条数据相关推荐

  1. mysql高效率写法_mysql高效率随机获取n条数据写法

    今天做项目遇到这个问题,本来想用mysql自带的随机函数来实现,但是想到这样做功能是实现了,但是效率真的好差!一下子想不到好的方法,就去网上找了一下,记录下来,好好研究学习一下. ID连续的情况下(注 ...

  2. mysql 随机分组_MySql分组后随机获取每组一条数据的操作

    MySql分组后随机获取每组一条数据的操作,数据,效率,时间,李四,条数 MySql分组后随机获取每组一条数据的操作 易采站长站,站长之家为您整理了MySql分组后随机获取每组一条数据的操作的相关内容 ...

  3. mysql 获取一条数据_MySQL数据库中随机获取一条或多条记录

    在开发过程中遇到了一个问题,使用MySQL数据库,用SQL语句在表中随机获取一条或多条数据,看似简单,但是往深层研究的话还是很有深度的,查了好多资料,接下来给大家分享一下: 1. 随机获取单条数据 S ...

  4. Oracle 随机获取N条数据

    Oracle 随机获取N条数据     当我们获取数据时,可能会有这样的需求,即每次从表中获取数据时,是随机获取一定的记录,而不是每次都获取一样的数据,这时我们可以采取Oracle内部一些函数,来达到 ...

  5. Lambda表达式 Linq SQL Server 分组后获取第一条数据或最小(最大)数据

    1.Lambda表达式 以下是从网上粘贴下来  经测试失败 提示方法"First"只能用作最终查询操作.请考虑在这个实例中使用方法"FirstOrDefault" ...

  6. mysql分组取出每组地一条数据_基于mysql实现group by取各分组最新一条数据

    基于mysql实现group by取各分组最新一条数据 前言: group by函数后取到的是分组中的第一条数据,但是我们有时候需要取出各分组的最新一条,该怎么实现呢? 本文提供两种实现方式. 一.准 ...

  7. mysql取分组数据中每个分组的最新一条数据

    mysql取分组数据中每个分组的最新一条数据 select * from data td,(select max(id) id from log group by name) md where td. ...

  8. oracle寻找第一条数据,oracle 获取第一条数据

    关于取第一条数据的sql特此作了一个例子如下: SELECT * FROM tableName where fd_rt = 'A' --and rownum=1 ORDER BY fd_date DE ...

  9. mysql怎样高效率随机获取n条数据

    ID连续的情况下(注意不能带where,否则结果不好): SELECT * FROM `mm_account` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MA ...

最新文章

  1. 图像数据增强(平移,旋转,亮度变换,翻转,添加高斯噪声,缩放,裁剪)
  2. Python使用matplotlib函数subplot可视化多个不同颜色的折线图、为指定的子图添加图例信息(legend)
  3. 从输入URL到页面加载的过程
  4. IgniteMe debug 寒假逆向生涯(2/100)
  5. nginx和pcre错误问题
  6. 利用Javascript的“函数重载”实现自定义Alert样式
  7. 9月30日或成年内最难打车日 滴滴1亿补贴鼓励司机师傅多接单
  8. 9月26日发布?一加7T系列被“扒光”:硬核到没朋友
  9. NFC模拟门禁卡,不用电脑,将门禁卡等各种卡模拟进手机里,无需root
  10. 14年刘意java笔记_刘意JavaSE 学习笔记——总纲
  11. [生产力]在线免费的EDA工具,可编辑AD\EAGLE等文件
  12. 百度万年历接口实现和分析
  13. 共享服务器切换账号,win7切换用户访问共享、共享文件夹切换方法
  14. php微信开发之微信卡券
  15. 计算机基础和web相关知识点
  16. 计算机组成原理sp接口,计算机组成原理2008年4月真题试题(02318)
  17. 系统短信验证码实现案例
  18. 原来小米手机的电源键不止能用来关机,这么多实用功能,别浪费了
  19. 常见设备/CMS默认口令
  20. 定积分之几种常见曲线

热门文章

  1. POJ - 3450
  2. 全国专业技术人员计算机应用能力考试题,2017年全国专业技术人员计算机应用能力考试题库...
  3. kettle的变量空间接口VariableSpace实现与委托模式
  4. 利用flashback query解决误删除表数据
  5. mysql ----DML(掌握)
  6. python祝福祖国代码_C语言-笔记一
  7. MyBatis+Oracle实现主键自增长
  8. Android开发笔记(一百五十四)OpenGL的画笔工具GL10
  9. java B2B2C Springboot多租户电子商城系统-Spring Cloud Stream(消息驱动)
  10. java B2B2C springmvc mybatis电子商务平台源码-------zuul网关实现