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');
分享到:
相关推荐
本文将详细介绍如何使用Oracle中的“NLS_SORT”功能,实现按照拼音、部首和笔画对中文数据进行排序的方法。 #### 一、Oracle9i中的NLS_SORT属性 Oracle9i及其后续版本提供了多种预定义的排序规则,其中包括针对...
在Oracle数据库中,处理汉字和拼音的场景时,有时我们需要获取汉字的拼音或者拼音首字母。这在构建中文搜索引擎、数据分析或报表展示等场景中非常有用。Oracle提供了一些内置的功能函数,可以用来实现这些需求。以下...
Oracle数据库虽然原生支持英文字符集,但通过特定的方法,也可以处理中文字符集并实现拼音查询功能。以下将详细阐述这一主题。 首先,我们需要理解Oracle数据库中的字符集概念。Oracle支持多种字符集,如AL32UTF8...
在IT领域,特别是数据库管理与查询...通过以上分析,我们不仅理解了如何利用SQL实现拼音首字母排序,还探讨了其实现机制和潜在的优化路径。这对于处理大规模中文数据集的应用开发人员来说,无疑是一个有价值的技能点。
- 例如,使用`pinyin4j`库(Java)来实现拼音转换,并通过Java存储过程在Oracle中调用。 2. **自定义函数:** - 如果不希望通过外部工具实现,也可以尝试构建一个基于Oracle的自定义函数来完成这一任务。这通常...
本文将详细介绍如何在Oracle中实现这一功能,主要基于提供的两个SQL脚本文件:`oracle生成五笔首字母的functions方法.sql`和`oracle生成拼音首字母的functions方法.sql`。 首先,我们来探讨拼音首字母的生成。在...
在Oracle数据库环境中,有时我们需要对汉字进行处理,例如获取汉字的拼音或首字母,这在中文数据检索、排序或建立索引时非常有用。本文将详细介绍如何使用PL/SQL存储过程来实现这一功能。 首先,我们需要理解Oracle...
总的来说,实现Oracle中批量修改汉字转拼音首字母的功能,需要对Oracle的内置函数有深入了解,并可能涉及到自定义PL/SQL函数的编写。这个过程可能涉及到字符编码、Unicode转换以及对多音字的处理,是一个涉及多方面...
oracle汉字转拼音 获得全拼、拼音首字母、拼音截取等
Oracle查询取汉字拼音首字母Function
oracle汉字转换成拼音首字母、全拼,各种转换类型比较齐全,oracle汉字转换五笔首字母链接https://blog.csdn.net/weixin_40912627/article/details/88710064
本文将详细介绍Oracle中常见的几种排序方式,包括按拼音、部首、笔画排序,以及如何处理NULL值,使用DECODE和NVL函数,以及实现高效的分页查询。 1. **按拼音排序**:Oracle支持按照汉字的拼音进行排序,这在处理...
本文将详细讲解如何在Oracle中实现获取汉字的拼音和拼音首字母的功能。 首先,我们要知道Oracle并不内置直接支持汉字转拼音的函数。但是,我们可以利用一些额外的资源,比如创建存储过程或者使用第三方的PL/SQL包来...
可以将oracle数据库中保存的中文转换成拼音,拼音首字母等
总之,`FUN_SPELLCODE`存储过程是Oracle环境下处理中文数据的强大工具,它通过精细的字符映射和高效的处理逻辑,实现了从汉字到拼音首字母的有效转换,极大地扩展了数据库在多语言环境下的功能性和灵活性。
oracle生成拼音码,oracle生成拼音码,oracle生成拼音码,oracle生成拼音码,oracle生成拼音码
1. **SCHINESE_RADICAL_M**:按照汉字部首笔画排序。 - **特点**:先按部首排序,再按笔画数排序。 - **应用场景**:适用于需要按照传统中文排序规则(如字典或词典)进行排序的情况。 2. **SCHINESE_STROKE_M**...
例如,以下语句将对 perexl 表中的数据按照 danwei 列的部首进行排序: SELECT * FROM perexl ORDER BY NLSSORT(danwei, 'NLS_SORT=SCHINESE_STROKE_M'); 五、按笔画排序 在 Oracle 中,可以使用 NLSSORT 函数对...
此函数同样采用了循环遍历每个字符的方式,但与GBK版本不同的是,这里利用了Oracle内置的`NLSSORT`函数来获取每个汉字的拼音排序码,从而间接地实现汉字到拼音首字母的转换。 核心步骤如下: 1. 遍历输入字符串中的...
总的来说,了解并掌握Oracle数据库相关的拼音码和五笔码,对于数据库管理员来说,特别是在处理大量中文数据和频繁操作时,是一种非常实用的技能。然而,随着技术的进步,这种技能的实用性可能会逐渐被更先进的输入...