yii2 order by Field ,yii2 按某个字段 固定值排序

版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可,转载时请标注 https://blog.csdn.net/qq6759/article/details/88864653

yii2 order FIELD,Yii2 按某个字段 固定值排序,Order By Field IN Yii2,Yii2 OrderBy specific field value first

$query = Model::find();

按照某种状态的自定义顺序排列

status
1
4
3
2
$query->orderBy(
    new \yii\db\Expression('FIELD (status, 1, 4, 3, 2)')
);
echo $query->createCommand()->getRawSql();
SELECT * FROM `table` ORDER BY FIELD (status, 1, 4, 3, 2);

如果有多种排序情况 

$query->orderBy([
    new \yii\db\Expression('FIELD (card_status, 1, 4, 3, 2)'),
    'id' => SORT_DESC,
]);

猜你喜欢

转载自blog.csdn.net/qq6759/article/details/88864653