Php 如何按random()和其他字段对mysql查询结果排序?
我有以下查询,对结果进行随机排序:Php 如何按random()和其他字段对mysql查询结果排序?,php,mysql,sql,random,sql-order-by,Php,Mysql,Sql,Random,Sql Order By,我有以下查询,对结果进行随机排序: $sql = "SELECT *, `active` FROM `profiles` WHERE CONCAT(',' , pfCategory , ',') LIKE '%$category%' AND `active`='1' ORDER BY RAND()"; 我想在profiles表中添加一个布尔字段,这样值为1的随机结果将显示在随机列表中值为0的随机结果的顶部。可能吗?谢谢您可以使用 $sql = "SELECT *, `active` FROM
$sql = "SELECT *, `active` FROM `profiles` WHERE CONCAT(',' , pfCategory , ',') LIKE '%$category%' AND `active`='1' ORDER BY RAND()";
我想在profiles
表中添加一个布尔字段,这样值为1的随机结果将显示在随机列表中值为0的随机结果的顶部。可能吗?谢谢您可以使用
$sql = "SELECT *, `active` FROM `profiles` WHERE CONCAT(',' , pfCategory , ',') LIKE '%$category%' AND `active`='1' ORDER BY active, RAND()";
如果活动,则为用于排序的字段
致以最良好的祝愿,
内博伊萨您可以在这里使用案例
order by case when `active`='1' then 0
else rand() end
尝试使用以下查询:
$sql = "SELECT *, `active` FROM `profiles` WHERE CONCAT(',' , pfCategory , ',') LIKE '%$category%' AND `active`='1' ORDER BY boolean_field_name DESC, RAND()";
是的,你为什么不先尝试一下,告诉我们你在尝试之后面临的问题。