mysql查询选择一个特定的行和另一个随机行

noo*_*ode 6 mysql random

我想显示两条记录.

例如 select * FROM users WHERE user_id = 5.

现在我想要从users表中随机选择另一行,但是使用user_id!= 5

是否可以在单个查询中执行.我尝试使用union,但我得到两个不同的行.

谢谢

Pek*_*ica 7

这对我来说很好.第一个结果始终是ID为5的记录,第二行是随机的.请注意,如果不存在ID为5的记录,则两行都是随机的.

SELECT * FROM users ORDER BY (user_id = 5) DESC, RAND() LIMIT 0,2 
Run Code Online (Sandbox Code Playgroud)