使用UNION从表中随机化特定结果

时间:2012-06-22 18:17:59

标签: php mysql

我使用UNION将3个查询放在一个结果中。对于其中一个查询,我想将它们的位置随机化到"主表"而其他2个查询不是ranadomized。有点像在一组产品中随机化广告展示位置。我可以很容易地用PHP做到这一点,但我想知道是否有一种简单的MySQL方式。

这样的事情可能吗?

1 个答案:

答案 0 :(得分:1)

这可能是困难的方法,但您可以在要随机化的表中添加“随机数”列并使用RAND()填充它 - 然后您可以按该列对该表进行排序。

你甚至可以说SELECT *, RAND() AS sortorder FROM mytable ORDER BY sortorder ASC但老实说我不确定这是否有用,而且我目前的工作站上没有MySQL服务器来试用它:)