DM8在对中文的排序,是默认按2进制编码来进行排序的. 达梦8增加了几种新的选择:

按中文拼音进行排序: SCHINESE_PINYIN_M
按中文部首进行排序: SCHINESE_RADICAL_M
按中文笔画进行排序: SCHINESE_STROKE_M

示例如下:

create table t 
(id int,c1 VARCHAR(100));

insert into t VALUES(1,'张三');
insert into t VALUES(2,'李四');
insert into t VALUES(6,'李六');
insert into t VALUES(3,'王五');
insert into t VALUES(4,'赵柳');

SELECT * FROM t ORDER BY NLSSORT(c1,'NLS_SORT = SCHINESE_PINYIN_M');  --按中文拼音进行排序


SELECT * FROM t ORDER BY NLSSORT(c1,'NLS_SORT = SCHINESE_RADICAL_M'); --按中文部首进行排序


SELECT * FROM t ORDER BY NLSSORT(c1,'NLS_SORT = SCHINESE_STROKE_M');  --按中文笔画进行排序

更多推荐