如何在 SQL 中请求随机行? [英] How to request a random row in SQL?

查看:16
本文介绍了如何在 SQL 中请求随机行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在纯 SQL 中请求随机行(或尽可能接近真正随机)?

How can I request a random row (or as close to truly random as is possible) in pure SQL?

推荐答案

查看此帖子:SQL to从数据库表中随机选择一行.它通过在 MySQL、PostgreSQL、Microsoft SQL Server、IBM DB2 和 Oracle 中执行此操作的方法(以下内容从该链接复制):

See this post: SQL to Select a random row from a database table. It goes through methods for doing this in MySQL, PostgreSQL, Microsoft SQL Server, IBM DB2 and Oracle (the following is copied from that link):

使用 MySQL 随机选择一行:

Select a random row with MySQL:

SELECT column FROM table
ORDER BY RAND()
LIMIT 1

使用 PostgreSQL 随机选择一行:

Select a random row with PostgreSQL:

SELECT column FROM table
ORDER BY RANDOM()
LIMIT 1

使用 Microsoft SQL Server 随机选择一行:

Select a random row with Microsoft SQL Server:

SELECT TOP 1 column FROM table
ORDER BY NEWID()

使用 IBM DB2 随机选择一行

Select a random row with IBM DB2

SELECT column, RAND() as IDX 
FROM table 
ORDER BY IDX FETCH FIRST 1 ROWS ONLY

使用 Oracle 随机选择一条记录:

Select a random record with Oracle:

SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1

这篇关于如何在 SQL 中请求随机行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆