【问题标题】:How to select a random row in SQL except selecting a particular id?除了选择特定的 id 之外,如何在 SQL 中选择随机行?
【发布时间】:2020-08-20 05:17:46
【问题描述】:

我无法为我的网站找到正确的代码。我想使用 PHP 代码从 SQL 数据库中获取随机行,并且我希望代码选择除具有特定 ID 的行之外的任何随机行。 这是我想出的代码:

<?php
$sql = "SELECT column FROM table ORDER BY RAND() LIMIT 1";
?>

我希望这段代码选择除 id = 1 的行之外的任何行。

【问题讨论】:

  • 您的意思是要排除某行吗?不知道“接受 id=1 的行”是什么意思。如果您的意思是“除了 id=1”,则添加 where id &lt;&gt; 1
  • 我的意思是一样的,你能告诉我符号的意思不等于吗?
  • 如果要删除随机搜索中的第一个结果,可以使用 LIMIT 查询,如SELECT coulmn FROM table ORDER BY rand() LIMIT 1,1。这将从随机选择中删除第一个结果
  • 是 表示不相等。您也可以使用 !=
  • “你能告诉我 符号的意思不等于吗?” - 请不要养成在这里询问这些基本知识的习惯,这是您应该可以自己轻松阅读的内容。 dev.mysql.com/doc/refman/8.0/en/comparison-operators.html

标签: php mysql sql database


【解决方案1】:

你可以试试这样的:

SELECT * FROM table_name
where id <> 1
ORDER BY RAND()
LIMIT 1;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-09
    • 1970-01-01
    • 1970-01-01
    • 2012-09-22
    • 2017-09-24
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多