开发者社区> 问答> 正文

mysql随机获取数据库中的数据,如何做?

例如:
如何从数据库里随机取得一条数据。
1 小明
2 小花
有时是小明,有时是小花
如何写sql语句?

展开
收起
落地花开啦 2016-02-13 11:56:26 2170 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    应该是一条数据吧:
    第一种:
    SELECT * FROM wjdb_typical ORDER BY RAND() LIMIT 1;
    网上说这种方式的数度比较慢,先是创建一个对应的ORDER BY 一张临时表,然后在这张不表中选择一个数据。
    第二种
    SELECT * FROM wjdb_typical WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM wjdb_typical ) ORDER BY id LIMIT 1;
    这种方式主要是先做ID的随机,然后在通过随机的ID取得一个数据。这里按理来说是要快一点。

    2019-07-17 18:41:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像