我可以像这样在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写这个?
试试这个:
->orderByRaw("CASE WHEN <CONDITION> THEN <column1> ELSE <column2> END DESC")
这些数字背后有算法吗? ORDER BY LENGTH(`lang`), LENGTH(`quality`), views DESC
可以做这个工作吗?