MySQL Query,使ORDER BY rand()在底部放置一个特定的行

时间:2015-01-05 13:05:36

标签: php mysql sql random

我有一个

ORDER BY rand() 

用于在我的表中选择随机行的SQL查询,是否有可能使它不会选择特定的行?例如,如果我有一个名为" Boolean"在表中,我只想拥有

rand() 

选择"布尔"的行等于" 1",并将其余部分放在底部,这可能吗?

很抱歉,如果这是一个愚蠢的问题,或者我已经解释得很糟糕,但我对SQL很陌生。

1 个答案:

答案 0 :(得分:2)

您可以使用order by

执行此操作
order by (boolean = 1) desc,
         rand()

order by可以使用多个键值。第一个说首先放置boolean = 1的值。在数字上下文中,布尔表达式被视为数字,1表示true,0表示false。因此第一个表达式的desc