今天第一次看到Oracle中的NLSSORT函数,有点意思,可以根据汉字做个性化的排序。

create table test(name varchar2(20));

insert into test values('中国');
insert into test values('美国');
insert into test values('日本');
insert into test values('德国');
insert into test values('法国');
insert into test values('英国');

commit;

--拼音
SQL> SELECT * FROM test ORDER BY NLSSORT(name,'NLS_SORT = SCHINESE_PINYIN_M');
NAME
--------------------
德国
法国
美国
日本
英国

中国

--笔划
SQL> SELECT * FROM test ORDER BY NLSSORT(name,'NLS_SORT = SCHINESE_STROKE_M');
NAME
--------------------
中国
日本
法国
英国
美国

德国

--部首 SQL> SELECT * FROM test ORDER BY NLSSORT(name,'NLS_SORT = SCHINESE_RADICAL_M'); NAME -------------------- 中国 德国 日本 法国 美国 英国

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。