1

我想知道如何从表中的最新三行中挑选一个。

我有这个:

"SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3"

我想:将结果保存在一个数组中并随机 0-2 并从数组中选择,但这不起作用,因为有很多行。

4

3 回答 3

2

如果我理解正确,您想从最新的 3 中随机选择一个。尝试子查询:

SELECT * FROM (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) t ORDER BY RAND() LIMIT 1
于 2013-02-06T18:15:50.077 回答
2
SELECT * FROM
    (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) last_three
ORDER BY RAND() LIMIT 1;
于 2013-02-06T18:15:52.680 回答
1

SELECT * FROM (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) AS recentBlogs ORDER BY RAND() LIMIT 1

为我工作。

于 2013-02-06T18:23:32.223 回答