Dar*_*man 5 mysql sql-order-by laravel eloquent
我有这行代码从数据库中获取结果:
'clanMembers' => User::find(Auth::user() -> clan_id) -> where('clan_id', '=', Auth::user() -> clan_id) -> orderBy('username') -> get()
Run Code Online (Sandbox Code Playgroud)
目前它按用户名订购.我希望通过clan_rank字段将其更改为order.此clan_rank字段只包含3个不同的值.这些是:
1. Owner
2. Admin
3. Member
Run Code Online (Sandbox Code Playgroud)
我希望首先与业主订购我的结果,然后是管理员,然后是会员.如何更改我的代码行以实现这些结果?
Mar*_*łek 36
你需要使用orderByRaw:
而不是orderBy你应该使用的部分
orderByRaw("FIELD(clan_rank , 'Owner', 'Admin', 'Member') ASC");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7371 次 |
| 最近记录: |