为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel - 按数字(int)排序,即使列类型是字符串

Laravel - 按数字(int)排序,即使列类型是字符串

PHP
慕森卡 2023-09-22 16:45:26
这里是:-$query = Section::orderBy("section", "desc")->get();这里的部分是一个字符串类型的列,但其中有数字,我想按这些数字进行排序,谢谢您的回复
查看完整描述

3 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

您可以将orderByRaw与mysql Convert一起使用

$query = Section::orderByRaw('CONVERT(section, SIGNED) desc')->get();


查看完整回答
反对 回复 2023-09-22
?
FFIVE

TA贡献1797条经验 获得超6个赞

首先,在设计模式时应该使用正确的数据类型。

对于现有模式,您可以调整 order by 子句,以使用orderByRaw方法在运行时类型转换您的值

->orderByRaw('section * 1 desc')


查看完整回答
反对 回复 2023-09-22
?
慕雪6442864

TA贡献1812条经验 获得超5个赞

$query->orderByRaw("section::int", "desc")->get();



查看完整回答
反对 回复 2023-09-22
  • 3 回答
  • 0 关注
  • 97 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信