http://tjbmx0987.iteye.com/blog/195176
找了相关的一些资料,都说的不是很清楚,自己也研究了下,终于搞明白了,希望对大家有帮助。
需要说明的是下面的方法需要ORACLE9i和以上的版本才支持。
Oracle9i之前,中文是按照二进制编码进行排序的。
在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值
SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序
SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序
SCHINESE_PINYIN_M 按照拼音排序,系统的默认排序方式为拼音排序
举例如下:
表名为 dept ,其中name字段是中文,下面分别实现按照单位名称的笔划、部首和拼音排序。
1: //按照笔划排序
2: select * from dept order by nlssort(name,'NLS_SORT=SCHINESE_STROKE_M');
3: //按照部首排序
4: select * from dept order by nlssort(name,'NLS_SORT=SCHINESE_RADICAL_M');
5: //按照拼音排序,此为系统的默认排序方式
6: select * from dept order by nlssort(name,'NLS_SORT=SCHINESE_PINYIN_M');
注意,该SQL指令并非标准指令,在SQLServer下面的实现方式并不相同。
分享到:
相关推荐
1. **按拼音排序**(`SCHINESE_PINYIN_M`):这种方式按照汉字的拼音顺序进行排序。 2. **按部首排序**(`SCHINESE_RADICAL_M`):根据汉字的部首进行排序。 3. **按笔画排序**(`SCHINESE_STROKE_M`):按照汉字...
### Oracle汉字转拼音函数知识点详解 #### 一、概述 在Oracle数据库中,有时需要将汉字转换成拼音,尤其是在处理中文数据时。本篇文档详细介绍了两种用于转换汉字到拼音的自定义函数:`fn_getpyKGJG` 和 `fn_...
在Oracle数据库环境中,有时我们需要对汉字字段进行处理,例如转换为拼音,以便于搜索、排序或者与其他系统集成。"ORACLE汉字转拼音"这个主题就聚焦于如何在Oracle数据库中实现这一功能。以下是对这个知识点的详细...
标题“SQL按拼音首字母排序”以及描述中的关键词“SQL按拼音排序”,指向了一种特殊的数据排序需求:在数据库中,针对包含中文字符的字段,按照中文拼音的首字母进行排序。这在处理大量含有中文名称、地点等信息的...
该工具包包含两个主要文件:`sql/oracle汉字转拼音package.sql`和`oracle汉字转拼音说明.txt`。 `sql/oracle汉字转拼音package.sql`是一个SQL脚本,它创建了一个Oracle数据库中的存储过程或者包(package),用于...
此函数同样采用了循环遍历每个字符的方式,但与GBK版本不同的是,这里利用了Oracle内置的`NLSSORT`函数来获取每个汉字的拼音排序码,从而间接地实现汉字到拼音首字母的转换。 核心步骤如下: 1. 遍历输入字符串中的...
### Oracle 汉字拼音简码获取:深入解析与应用 在现代信息技术中,文本处理尤其是多语言文本处理,已经成为数据库管理和应用开发中的关键环节。其中,将汉字转换为其拼音简码(即取每个汉字拼音的首字母)是常见的...
1. **按拼音排序**:Oracle支持按照汉字的拼音进行排序,这在处理中文数据时非常有用。可以使用`NLSSORT`函数配合`NLS_SORT`参数来实现。例如,以下语句会按照汉语拼音对`danwei`字段进行升序排序: ```sql select...
在Oracle数据库中,可以通过以下三种方式实现汉字排序: 1. **SCHINESE_RADICAL_M**:按照汉字部首笔画排序。 - **特点**:先按部首排序,再按笔画数排序。 - **应用场景**:适用于需要按照传统中文排序规则(如...
在Oracle数据库环境中,有时我们需要对汉字进行处理,例如获取汉字的拼音或首字母,这在中文数据检索、排序或建立索引时非常有用。本文将详细介绍如何使用PL/SQL存储过程来实现这一功能。 首先,我们需要理解Oracle...
Oracle姓名中文转全拼函数是解决在Oracle数据库中处理中文姓名时的一个常见需求,特别是考虑到汉字的多样性和复杂性,包括生僻字和多音字的处理。此函数旨在将中文姓名转换为全拼,方便进一步的数据处理或搜索。下面...
三、按拼音排序 在 Oracle 中,可以使用 NLSSORT 函数对数据进行拼音排序。例如,以下语句将对 perexl 表中的数据按照 danwei 列的拼音进行排序: SELECT * FROM perexl ORDER BY NLSSORT(danwei, 'NLS_SORT=...
而全拼音的提取则可以用于更精确的匹配,比如在进行拼音排序时: ```sql SELECT * FROM table ORDER BY get_full_pinyin(column); ``` 总的来说,处理Oracle中的汉字拼音,需要结合数据库的编程能力和对汉字拼音的...
### Oracle 获取汉字拼音首字母 在Oracle数据库中实现获取汉字拼音首字母的需求,通常涉及到对中文字符的处理以及拼音转换的技术。这样的功能可以应用于多种场景,例如数据排序、索引建立或是快速检索等。本文将...
1、设置NLS_SORT参数值 SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序 SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序 SCHINESE_PINYIN_M 按照拼音排序 2、Session级别的...
- 设置拼音排序: ```sql ALTER SESSION SET NLS_SORT=SCHINESE_PINYIN_M; ``` - 设置笔画排序: ```sql ALTER SESSION SET NLS_SORT=SCHINESE_STROKE_M; ``` - 设置部首排序: ```sql ALTER SESSION SET ...
`NLSSORT`函数可以按照指定的语言环境对字符串进行排序,这里通过设置参数`'NLS_SORT=SCHINESE_PINYIN_M'`,可以使得每个汉字被转换为其拼音并按拼音排序。通过这种方式,我们可以在内部逻辑中比较不同汉字的拼音值...
在Oracle数据库环境中,处理汉字并提取其拼音首字母是一个复杂但实用的功能,尤其在需要对中文数据进行排序、检索或格式化的情况下。本文将详细解析一个用于在Oracle中获取汉字拼音首字母的存储过程,该过程通过一...
在某些情况下,我们可能需要在数据库中存储汉字的拼音表示,以便进行全文搜索或者按拼音排序。Oracle JDBC驱动程序是Java应用程序连接Oracle数据库的桥梁,它允许我们在JavaScript环境中通过Java的数据库操作能力与...