Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 UNION 将 3 个查询放在一个结果中。对于其中一个查询,我想随机化它们在“主表”中的位置,而其他 2 个查询不被随机化。有点像在一组产品中随机放置广告。我可以很容易地用 PHP 做到这一点,但我想知道是否有一种简单的 MySQL 方法。
这样的事情可能吗?
这可能是一种困难的方式,但是您可以将“随机数”列添加到您想要随机化的表中并填充它RAND()——然后您可以按该列对该表进行排序。
RAND()
您甚至可以说SELECT *, RAND() AS sortorder FROM mytable ORDER BY sortorder ASC,但老实说,我不确定这是否可行,而且我当前的工作站上没有 MySQL 服务器可以尝试 :)
SELECT *, RAND() AS sortorder FROM mytable ORDER BY sortorder ASC