Php MYSQL在order by之后拾取随机行
我想在完成订单后随机选取一行 我的结果有时可以返回两行相同的值。所以我要做的是在返回的相同行之间随机选择一行 在下面的示例中,我想在返回的两行之间返回一行 谢谢Php MYSQL在order by之后拾取随机行,php,mysql,Php,Mysql,我想在完成订单后随机选取一行 我的结果有时可以返回两行相同的值。所以我要做的是在返回的相同行之间随机选择一行 在下面的示例中,我想在返回的两行之间返回一行 谢谢 select nondox, account, id from rates2 where weight='32' and country_code='US' and service like '%INT%' order by nondox,account 上述查询的结果是 nondox acc
select nondox, account, id
from rates2 where weight='32' and country_code='US'
and service like '%INT%'
order by nondox,account
上述查询的结果是
nondox account id
276.16 610661731 25805209
276.16 610798714 2108989
391.68 610662766 1281799
您可以将结果放入一个数组中,然后创建一个随机整数,随机(带限制)输出random中的索引值。
示例随机输出2,返回数组[random+1]即数组[3]可以提供更多详细信息吗?
这将消除类似的非ox值。这不是完全随机的,但应该可以工作。
选择account、id、nondox from rates2,其中weight='32'和country_Code='US'以及服务,如'%INT%'按nondox顺序分组,account
您可以使用函数RAND()为表中的每一行生成一个随机值
SELECT * FROM table_name
ORDER BY RAND()
LIMIT 1;
有关更多信息,请签出此项为什么不在sql中使用
ORDER BY RAND()…LIMIT 1
?ORDER BY nonbox,account,RAND()LIMIT 1
请参见此项。它适用于更多的数据库系统,但列在第一位。这是否回答了您的问题?按兰德订购()…限制1不会选择最便宜的非ox值如果我按兰德订购(),那么如何确保最便宜的非ox值位于顶部?您可以使用Min函数Min(非ox)您的代码将始终选择第二行。我想在第一排和第二排之间循环