我想构建一个按某个字段长度排序数据的查询。我需要将这个查询重写为laravel的Eloquent ORM。Laravel按字段长度排序
SELECT * FROM table ORDER BY CHAR_LENGTH(field)
我想构建一个按某个字段长度排序数据的查询。我需要将这个查询重写为laravel的Eloquent ORM。Laravel按字段长度排序
SELECT * FROM table ORDER BY CHAR_LENGTH(field)
看来orderByRaw
是你在找什么。这里有一个例子:
User::orderByRaw('CHAR_LENGTH(name)')->get();
取决于你更喜欢:
DB::table('tblname')->orderBy('LENGTH(field)', 'ASC')->get();
OR
Model::orderBy('LENGTH(field)', 'ASC')->get();
OR
Model::orderBy(DB::raw('LENGTH(field), field'));
它没有为我工作 – Coze
谢谢,它的工作原理! :) – Coze