zoukankan      html  css  js  c++  java
  • Oracle 中文转字母 函数

     1 CREATE OR REPLACE FUNCTION F_TRANS_PINYIN_CAPITAL(P_NAME IN VARCHAR2) RETURN VARCHAR2 AS
     2 V_COMPARE VARCHAR2(100);
     3 V_RETURN VARCHAR2(4000);
     4 FUNCTION F_NLSSORT(P_WORD IN VARCHAR2) RETURN VARCHAR2 AS
     5 BEGIN
     6 RETURN NLSSORT(P_WORD, 'NLS_SORT=SCHINESE_PINYIN_M');
     7 END;
     8 BEGIN
     9 
    10 FOR I IN 1..LENGTH(''''||P_NAME||'''') LOOP
    11 V_COMPARE := F_NLSSORT(SUBSTR(P_NAME, I, 1));
    12 IF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    13 V_RETURN := V_RETURN || 'a';
    14 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('簿 ') THEN
    15 V_RETURN := V_RETURN || 'b';
    16 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    17 V_RETURN := V_RETURN || 'c';
    18 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    19 V_RETURN := V_RETURN || 'd';
    20 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    21 V_RETURN := V_RETURN || 'e';
    22 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    23 V_RETURN := V_RETURN || 'f';
    24 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    25 V_RETURN := V_RETURN || 'g';
    26 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    27 V_RETURN := V_RETURN || 'h';
    28 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    29 V_RETURN := V_RETURN || 'j';
    30 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    31 V_RETURN := V_RETURN || 'k';
    32 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    33 V_RETURN := V_RETURN || 'l';
    34 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    35 V_RETURN := V_RETURN || 'm';
    36 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    37 V_RETURN := V_RETURN || 'n';
    38 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    39 V_RETURN := V_RETURN || 'o';
    40 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    41 V_RETURN := V_RETURN || 'p';
    42 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    43 V_RETURN := V_RETURN || 'q';
    44 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    45 V_RETURN := V_RETURN || 'r';
    46 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    47 V_RETURN := V_RETURN || 's';
    48 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    49 V_RETURN := V_RETURN || 't';
    50 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    51 V_RETURN := V_RETURN || 'w';
    52 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    53 V_RETURN := V_RETURN || 'x';
    54 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    55 V_RETURN := V_RETURN || 'y';
    56 ELSIF V_COMPARE >= F_NLSSORT('') AND V_COMPARE <= F_NLSSORT('') THEN
    57 V_RETURN := V_RETURN || 'z';
    58 END IF;
    59 END LOOP;
    60 RETURN V_RETURN;
    61 END;
  • 相关阅读:
    spring之通过实例工厂方法配置Bean
    spring之通过静态工厂方法配置Bean
    spring之添加后置处理器的bean的生命周期
    spring之未加后置处理器的bean的生命周期
    TreeMap源码分析——基础分析(基于JDK1.6)
    HashMap源码分析(基于JDK1.6)
    left join 和 left outer join 的区别
    开发者必备的6款源码搜索引擎
    理想的技术面试过程
    一篇学习HTTP状态码的神文:我与依依的橙色岁月
  • 原文地址:https://www.cnblogs.com/farmer-y/p/6100625.html
Copyright © 2011-2022 走看看