【发布时间】:2015-03-03 00:42:21
【问题描述】:
我有一个
ORDER BY rand()
用于在我的表中选择随机行的 SQL 查询,是否有可能使其不会选择特定行?例如,如果我在表中有一个名为“Boolean”的列,并且我只想拥有
rand()
选择“布尔”等于“1”的行,其余的放在底部,可以吗?
对不起,如果这是一个愚蠢的问题,或者我解释得不好,但我对 SQL 很陌生。
【问题讨论】:
我有一个
ORDER BY rand()
用于在我的表中选择随机行的 SQL 查询,是否有可能使其不会选择特定行?例如,如果我在表中有一个名为“Boolean”的列,并且我只想拥有
rand()
选择“布尔”等于“1”的行,其余的放在底部,可以吗?
对不起,如果这是一个愚蠢的问题,或者我解释得不好,但我对 SQL 很陌生。
【问题讨论】:
您可以使用order by:
order by (boolean = 1) desc,
rand()
order by 可以采用多个键值。第一个说首先使用boolean = 1 放置值。在数字上下文中,布尔表达式被视为数字,1 为真,0 为假。因此desc 是第一个表达式。
【讨论】: