`

ORACALE查询数据库按汉字拼音排序

 
阅读更多

CREATE OR REPLACE FUNCTION PUB_GET_PY(p_汉字 CHAR DEFAULT '%')
RETURN CHAR
IS

/********************************************************************
过程名称:PUB_GET_PY
功能:生成汉字拼音的首字符
开发者:葛长伟(dba123.com)
联系方式:gcw@tom.com
最后修改时间:2004.02.14
说明:

修改记录:
2004.02.14 葛长伟 创建
********************************************************************/

v_汉字内码 NUMBER(8);
v_拼音 CHAR(1);
BEGIN
v_汉字内码 := ASCII(p_汉字);

IF v_汉字内码 BETWEEN 45217 AND 45252 THEN
v_拼音 := 'A';
ELSIF v_汉字内码 BETWEEN 45253 AND 45760 THEN
v_拼音 := 'B';
ELSIF v_汉字内码 BETWEEN 45761 AND 46317 THEN
v_拼音 := 'C';
ELSIF v_汉字内码 BETWEEN 46318 AND 46825 THEN
v_拼音 := 'D';
ELSIF v_汉字内码 BETWEEN 46826 AND 47009 THEN
v_拼音 := 'E';
ELSIF v_汉字内码 BETWEEN 47010 AND 47296 THEN
v_拼音 := 'F';
ELSIF v_汉字内码 BETWEEN 47297 AND 47613 THEN
v_拼音 := 'G';
ELSIF v_汉字内码 BETWEEN 47614 AND 48116 THEN
v_拼音 := 'H';
ELSIF v_汉字内码 BETWEEN 48117 AND 49061 THEN
v_拼音 := 'J';
ELSIF v_汉字内码 BETWEEN 49062 AND 49323 THEN
v_拼音 := 'K';
ELSIF v_汉字内码 BETWEEN 49324 AND 49895 THEN
v_拼音 := 'L';
ELSIF v_汉字内码 BETWEEN 49896 AND 50370 THEN
v_拼音 := 'M';
ELSIF v_汉字内码 BETWEEN 50371 AND 50613 THEN
v_拼音 := 'N';
ELSIF v_汉字内码 BETWEEN 50614 AND 50621 THEN
v_拼音 := 'O';
ELSIF v_汉字内码 BETWEEN 50622 AND 50925 THEN
v_拼音 := 'P';
ELSIF v_汉字内码 BETWEEN 50926 AND 51386 THEN
v_拼音 := 'Q';
ELSIF v_汉字内码 BETWEEN 51387 AND 51445 THEN
v_拼音 := 'R';
ELSIF v_汉字内码 BETWEEN 51446 AND 52217 THEN
v_拼音 := 'S';
ELSIF v_汉字内码 BETWEEN 52218 AND 52697 THEN
v_拼音 := 'T';
ELSIF v_汉字内码 BETWEEN 52698 AND 52979 THEN
v_拼音 := 'W';
ELSIF v_汉字内码 BETWEEN 52980 AND 53640 THEN
v_拼音 := 'X';
ELSIF v_汉字内码 BETWEEN 53641 AND 54480 THEN
v_拼音 := 'Y';
ELSIF v_汉字内码 BETWEEN 54481 AND 55289 THEN
v_拼音 := 'Z';
ELSE
v_拼音 := NULL;
END IF;

RETURN v_拼音;
END PUB_GET_PY;

分享到:
评论

相关推荐

    oracle数据库中汉字排序方法

    3. **SCHINESE_PINYIN_M**:按照汉字拼音排序。 - **特点**:根据汉字的拼音进行排序,支持GBK和UTF-8编码。 - **应用场景**:适用于需要按照现代汉语拼音顺序进行排序的情况。 #### 三、示例代码 下面通过具体...

    oracle数据库汉字首字排序

    ### Oracle数据库汉字首字排序知识点 #### 一、Oracle数据库中的汉字排序 在Oracle数据库中,对于汉字排序的需求非常常见,尤其是在需要按照拼音或者笔画等规则进行排序的情况下。Oracle提供了一个强大的函数`...

    oracle提取汉字拼音和首字母

    总的来说,"oracle提取汉字拼音和首字母"的PL/SQL存储过程提供了一种在Oracle数据库内处理中文字符的解决方案,它涉及到了字符串处理、文本解析和自定义函数等技术,对于处理中文数据的应用场景具有很高的实用价值。...

    Oracle 汉字拼音简码获取

    综上所述,`ZLSPELLCODE`函数不仅展示了Oracle数据库在处理复杂文本操作方面的能力,也为汉字拼音转换提供了实用的解决方案。通过对该函数的深入了解和灵活应用,开发者可以显著提升数据处理的效率和准确性,在多...

    oracle汉字转拼音函数整理大全

    在Oracle数据库中,有时需要将汉字转换成拼音,尤其是在处理中文数据时。本篇文档详细介绍了两种用于转换汉字到拼音的自定义函数:`fn_getpyKGJG` 和 `fn_getpyWKG`。这些函数能够满足不同场景下对拼音格式的需求,...

    oracle获取汉字拼音首字母

    在Oracle数据库中实现获取汉字拼音首字母的需求,通常涉及到对中文字符的处理以及拼音转换的技术。这样的功能可以应用于多种场景,例如数据排序、索引建立或是快速检索等。本文将详细介绍如何在Oracle环境中实现这一...

    oracle汉字转拼音

    根据提供的文件信息,本文将详细解释如何在Oracle数据库中实现汉字到拼音的转换,并通过具体的代码实例进行说明。 ### Oracle数据库中的汉字转拼音 #### 背景介绍 在处理包含中文字符的数据时,有时我们需要将汉字...

    oracle排序方法拼音,部首,笔画

    1. **按拼音排序**(`SCHINESE_PINYIN_M`):这种方式按照汉字的拼音顺序进行排序。 2. **按部首排序**(`SCHINESE_RADICAL_M`):根据汉字的部首进行排序。 3. **按笔画排序**(`SCHINESE_STROKE_M`):按照汉字...

    ORACLE中取汉字拼音首字母的存储过程

    在Oracle数据库环境中,处理汉字并提取其拼音首字母是一个复杂但实用的功能,尤其在需要对中文数据进行排序、检索或格式化的情况下。本文将详细解析一个用于在Oracle中获取汉字拼音首字母的存储过程,该过程通过一...

    sql 按拼音首字母排序

    - **索引策略**:对于经常需要按拼音排序的字段,建立适当的索引可以显著加快查询速度。 - **缓存机制**:对于重复出现的中文字符串,可以预先计算并缓存其拼音首字母序列,避免重复计算。 - **代码优化**:审查并...

    oracle__汉字排序

    通过上述介绍,我们可以看到Oracle数据库提供了多种方式来设置汉字的排序规则,包括拼音排序、笔画排序和部首排序等。这些排序规则的设置不仅可以在会话级别进行,也可以在系统级别进行。对于不同的应用场景,可以...

    ORACLE汉字转拼音

    在Oracle数据库环境中,有时我们需要对汉字字段进行处理,例如转换为拼音,以便于搜索、排序或者与其他系统集成。"ORACLE汉字转拼音"这个主题就聚焦于如何在Oracle数据库中实现这一功能。以下是对这个知识点的详细...

    Oracle汉字拼音首字母函数

    ### Oracle汉字拼音首字母函数详解 #### 一、概述 在数据库处理中文数据时,有时候我们需要根据汉字转换成对应的拼音首字母来进行检索或排序。Oracle提供了多种方式来处理字符串,但针对汉字转拼音首字母的功能并...

    获取拼音首码和五笔首码

    在IT领域,拼音首码和五笔首码是汉字输入法中的关键技术,它们与数据库的结合使用能够提高数据处理和搜索效率。本文将详细讲解这两个概念及其在数据库环境中的应用。 拼音首码是基于汉语拼音的简写形式,通常用于...

    对Oracle 排序中的几种常用排序的介绍

    1. **按拼音排序**:Oracle支持按照汉字的拼音进行排序,这在处理中文数据时非常有用。可以使用`NLSSORT`函数配合`NLS_SORT`参数来实现。例如,以下语句会按照汉语拼音对`danwei`字段进行升序排序: ```sql select...

    ORACLE-pinyin.rar_oracle_拼音

    在Oracle数据库系统中,处理汉字拼音的需求时常出现,特别是在进行数据检索、中文排序或与中文字符串相关的业务逻辑中。"ORACLE-pinyin.rar_oracle_拼音"这个压缩包文件很可能包含了一个或多个实用的PL/SQL函数,...

    oracle 中文转拼音工具包

    `sql/oracle汉字转拼音package.sql`是一个SQL脚本,它创建了一个Oracle数据库中的存储过程或者包(package),用于实现中文到拼音的转换功能。在Oracle数据库中,存储过程是一组为了完成特定功能的SQL语句集,可以被...

    oracle数据库设计文档模版

    - **汉字拼音表 (BASE$CHINESE)**:用于检索和排序中文字符。 - **考勤类别表 (Base_CheckSort)**:定义不同的考勤类型。 - **汽车司机表 (Base_Driver)**:管理司机的信息。 - **缺陷清册表 (Base_EDList)**:记录...

    oracle姓名中文转全拼函数

    Oracle姓名中文转全拼函数是解决在Oracle数据库中处理中文姓名时的一个常见需求,特别是考虑到汉字的多样性和复杂性,包括生僻字和多音字的处理。此函数旨在将中文姓名转换为全拼,方便进一步的数据处理或搜索。下面...

    EasyUI Datagrid 中文排序的问题

    1. **Oracle数据库**: Oracle 提供了 `NLSSORT` 函数来进行多语言排序。为了实现中文排序,可以使用如下 SQL 语句: ```sql SELECT * FROM table WHERE 1=1 ORDER BY NLSSORT(t_.NAME, 'NLS_SORT=SCHINESE_...

Global site tag (gtag.js) - Google Analytics