环境
系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:4.5
症状
使用oeder by排序时,闫(‘Y’)排在了赵(‘Z’)的后面。
问题原因
因为客户使用了order by comvert_to(SUBSTRING(name,1,1),‘GB18030’),GB18030编码中’闫’排在’赵’的后面,查询结果并没有问题。只是按照字母排序闫(‘Y’)在赵(‘Z’)的前面。
解决方案
使用order by name collate “zh_CN”,替换order by comvert_to(SUBSTRING(name,1,1),‘GB18030’)。