加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql中如何随机抽取一定数量的记录

发布时间:2022-02-12 14:45:24 所属栏目:MySql教程 来源:互联网
导读:本篇文章为大家展示了mysql中怎么随机抽取一定数量的记录,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 1.order by rand() 写法: SELECT id FROM `table` ORDER BY rand() 这种写法的缺点是rand函数在order by
       本篇文章为大家展示了mysql中怎么随机抽取一定数量的记录,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
 
1.order by rand()
 
写法:
 
SELECT
  id
FROM
  `table`
ORDER BY
  rand()
这种写法的缺点是rand函数在order by中被执行多次,影响效率。
 
2.max(id) * rand() 使用join
 
写法:
 
SELECT
  *
FROM
  `table` AS t1
JOIN (
  SELECT
    ROUND(
      RAND() * (
        (SELECT MAX(id) FROM `table`) - (SELECT MIN(id) FROM `table`)
      ) + (SELECT MIN(id) FROM `table`)
    ) AS id
) AS t2
WHERE
  t1.id >= t2.id
ORDER BY
  t1.id
LIMIT 1;
上述内容就是mysql中怎么随机抽取一定数量的记录,你们学到知识或技能了吗?

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读