加入收藏 | 设为首页 | 会员中心 | 我要投稿 4S站长网 (https://www.4s3.cn/)- 科技、混合云存储、数据迁移、云上网络、数据计算!
当前位置: 首页 > 数据库 > MySql > 正文

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

发布时间:2021-02-20 20:48:13 所属栏目:MySql 来源:互联网
导读:按字母顺序订购时,我留下了这个: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(); 等等我需要这些

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

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函数而不是直列名.我只是从我和你的例子一起使用的参考文献中抄写 – 我无法保证其功效.

(编辑:4S站长网)

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

    推荐文章
      热点阅读