我读过这个问题的很多答案,但在这种情况下似乎没有一个答案,当你需要在文章数据库中选择一个随机行时,比如说一个 wordpress 数据库,在 wp_posts 中,你实际上有两个修订版本,已删除和已发表的文章。
如果 id 是随机的并且帖子未像此代码中那样发布,则以前的答案似乎返回空白结果
SELECT * FROM wp_posts AS w
JOIN (SELECT (RAND() * (SELECT MAX(id) FROM wp_posts)) AS id) AS r2
WHERE w.id >= r2.id
AND w.post_status = 'publish'
ORDER BY w.id ASC
LIMIT 1
最佳答案
直接使用
SELECT *
FROM wp_posts
WHERE post_status = 'publish'
ORDER BY RAND()
LIMIT 1
获取正在发布的随机记录。
关于php - 从 mysql 的表中选择随机 AND 'published' 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32855696/