首页 > 解决方案 > 检索随机 id_post sql

问题描述

我有这张桌子:

+---------+------+
| id_post | post |
+---------+------+
| 24      | A    |
| 26      | B    |
| 39      | C    |
| 57      | D    |
+---------+------+

我想检索一个随机的id_post

SELECT id_post
FROM  posts
WHERE rand()

我想检索单个值2426或。3957

我怎样才能使它工作?

标签: mysqlrandomsql-order-bysql-limit

解决方案


你似乎想要ORDER BY RAND()LIMIT 1

SELECT id_post
FROM  posts
ORDER BY rand()
LIMIT 1

你没有告诉你正在使用哪个数据库。和的实际语法因数据库RAND()LIMIT 1异。以上将在MySQL中工作。其他数据库中也有等价的语法,例如:

Postgres:

SELECT id_post
FROM  posts
ORDER BY random()
LIMIT 1

SQL 服务器:

SELECT TOP (1) id_post
FROM  posts
ORDER BY newid()

推荐阅读