GBase 8a之按照拼音方式排序的方法(纠正conver( colname using gbk)的错误 )

发布时间:2026/7/15 14:55:55
GBase 8a之按照拼音方式排序的方法(纠正conver( colname using gbk)的错误 ) 1 主要解决问题1在8a中无论使用utf8 utf8mb4 还是gbk 的方式都无法准确按照汉语拼音的顺序进行排序。这里不说utf8和utf8mb4了解释一下gbk的方式一定程度上可以但也有个别情况原因不明如下例gbase select * from han; ------ | a | ------ | 赵 | | 痣 | | 喆 | | 准 | ------ 4 rows in set (Elapsed: 00:00:00.01) gbase select * from han order by convert(a using gbk); ------ | a | ------ | 喆 | | 赵 | | 准 | | 痣 | ------ 4 rows in set (Elapsed: 00:00:00.02)2 部署方式1 直接使用./orderbypy 192.168.1.5 gbase gbase20110531 test pinyin name desc 参数含义集群ip用户名密码库名表名排序字段名排序方式 排序方式 desc 降序 asc 升序3 实现效果gbase select * from pinyin; ------------ | id | name | ------------ | 1 | 张 | | 2 | 赵 | | 3 | 郑 | | 4 | 周 | | 5 | 朱 | | 6 | 章 | | 7 | 甄 | | 8 | 仲 | | 9 | 卓 | | 10 | 詹 | | 11 | 占 | | 12 | 战 | | 13 | 展 | | 14 | 瞻 | | 15 | 哲 | | 16 | 折 | | 17 | 浙 | | 18 | 蔗 | | 19 | 珍 | | 20 | 真 | ------------ 20 rows in set (Elapsed: 00:00:00.01) [gbaselocalhost pinyin]$ ./dist/orderbypy 192.168.1.5 gbase gbase20110531 test pinyin name asc -------------------------------------------------------------------------------- id name -------------------------------------------------------------------------------- 10 詹 11 占 12 战 13 展 14 瞻 1 张 6 章 2 赵 15 哲 16 折 17 浙 18 蔗 7 甄 19 珍 20 真 3 郑 8 仲 4 周 5 朱 9 卓 [gbaselocalhost pinyin]$ ./dist/orderbypy 192.168.1.5 gbase gbase20110531 test pinyin name desc -------------------------------------------------------------------------------- id name -------------------------------------------------------------------------------- 9 卓 5 朱 4 周 8 仲 3 郑 7 甄 19 珍 20 真 15 哲 16 折 17 浙 18 蔗 2 赵 1 张 6 章 10 詹 11 占 12 战 13 展 14 瞻 gbase select * from han; ------ | a | ------ | 赵 | | 痣 | | 喆 | | 准 | ------ 4 rows in set (Elapsed: 00:00:00.00) [gbaselocalhost pinyin]$ ./dist/orderbypy 192.168.1.5 gbase gbase20110531 test han a asc -------------------------------------------------------------------------------- a -------------------------------------------------------------------------------- 赵 喆 痣 准 [gbaselocalhost pinyin]$ ./dist/orderbypy 192.168.1.5 gbase gbase20110531 test han a desc -------------------------------------------------------------------------------- a -------------------------------------------------------------------------------- 准 痣 喆 赵5 参考文件1 注 该版本为centos8python2.7环境下编译。2 文件下载 orderbypy链接: https://pan.baidu.com/s/1Z4xKzxjLcCuqTlHvXxkb1A 提取码: pthn