sql - SQL中如何随机选择行?

标签 sql database random

我正在使用 MSSQL Server 2005。在我的数据库中,我有一个表“customerNames”,它有两列“Id”和“Name”以及大约。 1,000 个结果。

我正在创建一项功能,每次我都必须随机挑选 5 位客户。谁能告诉我如何创建一个每次执行查询时都会随机获取 5 行(Id 和 Name)的查询?

最佳答案

SELECT TOP 5 Id, Name FROM customerNames
ORDER BY NEWID()

也就是说,似乎每个人都来到此页面是为了对您的问题进行更笼统的回答:

Selecting a random row in SQL

用 MySQL 选择一个随机行:

SELECT column FROM table
ORDER BY RAND()
LIMIT 1

使用 PostgreSQL 选择随机行:

SELECT column FROM table
ORDER BY RANDOM()
LIMIT 1

使用 Microsoft SQL Server 选择随机行:

SELECT TOP 1 column FROM table
ORDER BY NEWID()

使用 IBM DB2 选择随机行

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

用 Oracle 选择一条随机记录:

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

使用 sqlite 选择一个随机行:

SELECT column FROM table 
ORDER BY RANDOM() LIMIT 1

关于sql - SQL中如何随机选择行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/580639/

相关文章:

javascript - 我希望在单击链接时显示一个随机主页(来自预定义列表)

sql - R 是否提供比 tryCatch() 更干净的东西来安全地进行 SQL 查询?

sql - 使用 SQL 获取按部门分组的最大值

sql - 我们可以将额外的参数传递给 beego 路由器吗

mysql - 将删除的属性返回到实时站点

MYSQL - 基于其他列中公共(public)值的列的 SUM

database - 面向列和面向行的数据库有什么区别?

c++ - 随机数生成器未在设置的变量参数内生成

python - 使用 peewee 合并具有不同名称的字段

javascript - 用于表单的 Google Apps 脚本,生成唯一 ID 号