sortarray()中文排序规则是什么?

为什么中文文本数组排出来不是按照首字母a-z或者z-a的顺序排的?

和数据库里直接order by XX出来的排序不一样(也不是倒序,可以说是乱序)

FineReport EWPNreAp 发布于 2023-3-28 13:59 (编辑于 2023-3-31 11:08)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
zsh331Lv8专家互助
发布于2023-12-12 18:13

-- 扩展后中文按拼音排序-https://help.fanruan.com/finereport/doc-view-3309.html

------------

最佳回答
0
qiqits1984Lv6中级互助
发布于2023-3-28 14:01

中文拼音首字母吧、中文不都是这样?

  • EWPNreAp EWPNreAp(提问者) 不是他是乱序,拼音g开头的后面y开头下面又t开头,就很迷
    2023-03-31 11:05 
最佳回答
0
snrtuemcLv8专家互助
发布于2023-3-28 14:04

那就SORTARRAY()后倒叙下

REVERSEARRAY(SORTARRAY(数组))

最佳回答
0
unnehcLv3见习互助
发布于2023-3-31 16:51(编辑于 2023-3-31 17:07)

unicode码顺序,一般是部首+笔画数

最佳回答
0
帆软用户lCOdYk1KDBLv2见习互助
发布于2024-1-10 08:30

中文字符应该是按照 ASCII 码进行排序。

对[“张颖”,“韩文”,“王伟”,“张武”]进行排序,排序结果是[“张武”,“张颖”,“王伟”,“韩文”]

用ASCALL转换工具转换后:张武—\u5f20\u6b66 ;张颖—\u5f20\u9896;王伟—\u738b\u4f1f;韩文—\u97e9\u6587

从这里不难看出来,对于中文字符的排序,首先当第一个中文字符不一样时,先按照第一个中文字符的ASCALL码进行升序排序,当第一个中文字符一样时,则继续对第二个中文字符的ASCALL码进行比较,然后按照大小升序排序

  • 5关注人数
  • 352浏览人数
  • 最后回答于:2024-1-10 08:30
    请选择关闭问题的原因
    确定 取消
    返回顶部