Laravel 按字段长度排序
Laravel order by field length
我想构建一个按特定字段长度排序数据的查询。我需要将此查询重写为 laravel 的 Eloquent ORM。
SELECT * FROM table ORDER BY CHAR_LENGTH(field)
取决于您的喜好:
DB::table('tblname')->orderBy('LENGTH(field)', 'ASC')->get();
或
Model::orderBy('LENGTH(field)', 'ASC')->get();
或
Model::orderBy(DB::raw('LENGTH(field), field'));
看来 orderByRaw
就是您要找的。这是一个例子:
User::orderByRaw('CHAR_LENGTH(name)')->get();
查询生成器
DB::table('table_name')->orderByraw('CHAR_LENGTH(col_name) ASC')->get();
Eloquent ORM
User::orderByRaw('CHAR_LENGTH(col_name)')->get();
在我的查询中,我必须为我的字段添加引号。
User::orderByRaw('CHAR_LENGTH("name")')->get();
我想构建一个按特定字段长度排序数据的查询。我需要将此查询重写为 laravel 的 Eloquent ORM。
SELECT * FROM table ORDER BY CHAR_LENGTH(field)
取决于您的喜好:
DB::table('tblname')->orderBy('LENGTH(field)', 'ASC')->get();
或
Model::orderBy('LENGTH(field)', 'ASC')->get();
或
Model::orderBy(DB::raw('LENGTH(field), field'));
看来 orderByRaw
就是您要找的。这是一个例子:
User::orderByRaw('CHAR_LENGTH(name)')->get();
查询生成器
DB::table('table_name')->orderByraw('CHAR_LENGTH(col_name) ASC')->get();
Eloquent ORM
User::orderByRaw('CHAR_LENGTH(col_name)')->get();
在我的查询中,我必须为我的字段添加引号。
User::orderByRaw('CHAR_LENGTH("name")')->get();