根据指定字段的首字母排序
Users::query()->orderBy(DB::raw('convert(name using gbk)'))->get();
原生sql使用为
SELECT * FROM table ORDER BY CONVERT(字段 USING GBK) ASC
由于一般数据库编码大都为utf-8 ,只要我们在排序时将需要排序的字段转化为GBK编码再进行排序,就可以实现按照名称的首字母进行排序了,在MySQL中提供了函数CONVERT() ,该函数可用来获取一个类型的值 。
该函数的使用方式为 CONVERT(字段 USING GBK)