oracle数据库对中文字段排序...
时间:2010-08-18 来源:hzbsec
方法有2种:
1、建立一个中文对应的拼音码字段,默认可以为中文的首拼,也可以支持修改,排序时使用拼音码字段排序,这种方法以前一直在用,对于客户需求的灵活性也可以比较好保证,缺点是需要对应的维护,也占用了大量表空间。
2、使用ORACLE自己的排序,在ORACLE帮助文档里找了下,还真有对汉字排序的支持,方法如下:
按照拼音排序:SELECT * FROM TABLE_NAME ORDER BY NLSSORT(TABLE_FIELD,'NLS_SORT=SCHINESE_PINYIN_M');
按照笔画排序:SELECT * FROM TABLE_NAME ORDER BY NLSSORT(TABLE_FIELD,'NLS_SORT=SCHINESE_STROKE_M');
按照偏旁部首排序:SELECT * FROM TABLE_NAME ORDER BY NLSSORT(TABLE_FIELD,'NLS_SORT=SCHINESE_RADICAL_M');
在11g下测试通过,不清楚在老版本下能不能支持。
相关阅读 更多 +