加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Laravel / PHP:按字母顺序排列,按顺序排列

发布时间:2021-03-06 16:48:42 所属栏目:MySql教程 来源:网络整理
导读:按字母顺序订购时,我留下了这个: S1 Episode 1S1 Episode 11S1 Episode 12S1 Episode 2S1 Episode 3S2 Episode 1S2 Episode 11 示例代码: DB::table('test')-orderby('title','ASC')-get(); 等等我需要这些才能正确订购.有解决方案吗 谢谢. 最佳答案您正面

按字母顺序订购时,我留下了这个:

S1 Episode 1
S1 Episode 11
S1 Episode 12
S1 Episode 2
S1 Episode 3

S2 Episode 1
S2 Episode 11

示例代码:

DB::table('test')->orderby('title','ASC')->get();

等等我需要这些才能正确订购.有解决方案吗

谢谢.

最佳答案 您正面临着以字母数字或计算机科学术语对自然分类进行分类的问题.

有many ways to achieve a natural sort with straight MySQL但您也可以将Laravel助手的结果转换为数组格式并实现PHP的natsort function instead.

从我上面找到的方法中,我得出了可能通过示例代码解决问题的最佳方法:

DB::table('test')->orderBy('LENGTH(title)','ASC')
    ->orderBy('title','ASC')
    ->get();

但是我不确定帮助者是否会抱怨在orderBy函数中接收MySQL函数而不是直列名.我只是从我和你的例子一起使用的参考文献中抄写 – 我无法保证其功效.

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读