数据库汉字拼音排序

Oracle 数据库中,对中文列按拼音排序时,如果简单的使用“ ORDER BY xxx ASC ”,一般情况下是可以按拼音进行正常排序的,但碰到偏僻字时,就有点不对了。比如碰到“衢州( quzhou ”,如下:

杭州

湖州

嘉兴

金华

丽水

宁波

绍兴

台州

温州

舟山

衢州

 

这时我们可以通过修改 nlssort 来实现按拼音 A-Z 排序, sql 应该写成“ ORDER BY nlssort(xxx,'NLS_SORT=SCHINESE_PINYIN_M') ASC ”,排序结果就会变为:

杭州

湖州

嘉兴

金华

丽水

宁波

衢州

绍兴

台州

温州

舟山

这样就 OK

你可能感兴趣的:(oracle,sql)