orderby 方法在 laravel 中使用 2 个案例
orderby method use 2 case in laravel
我可以在laravel中使用orderby方法
像这样
return $this->hasMany('Link')->orderBy('quality', 'desc');
没关系我想这样使用
CASE `lang`
WHEN 'a' THEN 1
WHEN 'as' THEN 2
WHEN 'asd' THEN 3
END
,CASE `quality`
WHEN 'd' THEN 1
WHEN 'ds' THEN 2
WHEN 'dsa' THEN 3
WHEN 'dsaa' THEN 4
WHEN 'dsaaa' THEN 6
WHEN 'dsaaaa' THEN 7
WHEN 'dsaaaaa' THEN 8
WHEN 'dsaaaaaaaaa' THEN 9
WHEN 'dsaaaa' THEN 10
END,views DESC
我如何在 laravel 中写这个?
这些数字背后有什么算法吗? ORDER BY LENGTH(`lang`), LENGTH(`quality`), views DESC
可以完成这项工作吗?
试试这个:
->orderByRaw("CASE WHEN <CONDITION> THEN <column1> ELSE <column2> END DESC")
我可以在laravel中使用orderby方法 像这样
return $this->hasMany('Link')->orderBy('quality', 'desc');
没关系我想这样使用
CASE `lang`
WHEN 'a' THEN 1
WHEN 'as' THEN 2
WHEN 'asd' THEN 3
END
,CASE `quality`
WHEN 'd' THEN 1
WHEN 'ds' THEN 2
WHEN 'dsa' THEN 3
WHEN 'dsaa' THEN 4
WHEN 'dsaaa' THEN 6
WHEN 'dsaaaa' THEN 7
WHEN 'dsaaaaa' THEN 8
WHEN 'dsaaaaaaaaa' THEN 9
WHEN 'dsaaaa' THEN 10
END,views DESC
我如何在 laravel 中写这个?
这些数字背后有什么算法吗? ORDER BY LENGTH(`lang`), LENGTH(`quality`), views DESC
可以完成这项工作吗?
试试这个:
->orderByRaw("CASE WHEN <CONDITION> THEN <column1> ELSE <column2> END DESC")