zoukankan      html  css  js  c++  java
  • Oracle 适用函数:获取字符串的第一个拼音字母

    代码
    create or replace function FN_GETSPELLCODING
    (P_NAME 
    IN VARCHAR2RETURN VARCHAR2 AS
    V_COMPARE 
    VARCHAR2(100);
    V_RETURN 
    VARCHAR2(4000);

    FUNCTION F_NLSSORT(P_WORD IN VARCHAR2RETURN VARCHAR2 AS
     
    BEGIN
     
    RETURN NLSSORT(P_WORD, 'NLS_SORT=SCHINESE_PINYIN_M');
     
    END;
     
    BEGIN

     
    FOR I IN 1..LENGTH(P_NAME) LOOP
     V_COMPARE :
    = F_NLSSORT(SUBSTR(P_NAME, I, 1));
     
    IF V_COMPARE >= F_NLSSORT(' 吖 'AND V_COMPARE <= F_NLSSORT('驁 'THEN
     V_RETURN :
    = V_RETURN || 'A';
     ELSIF V_COMPARE 
    >= F_NLSSORT('八 'AND V_COMPARE <= F_NLSSORT('簿 'THEN
     V_RETURN :
    = V_RETURN || 'B';
     ELSIF V_COMPARE 
    >= F_NLSSORT('嚓 'AND V_COMPARE <= F_NLSSORT('錯 'THEN
     V_RETURN :
    = V_RETURN || 'C';
     ELSIF V_COMPARE 
    >= F_NLSSORT('咑 'AND V_COMPARE <= F_NLSSORT('鵽 'THEN
     V_RETURN :
    = V_RETURN || 'D';
     ELSIF V_COMPARE 
    >= F_NLSSORT('妸 'AND V_COMPARE <= F_NLSSORT('樲 'THEN
     V_RETURN :
    = V_RETURN || 'E';
     ELSIF V_COMPARE 
    >= F_NLSSORT('发 'AND V_COMPARE <= F_NLSSORT('猤 'THEN
     V_RETURN :
    = V_RETURN || 'F';
     ELSIF V_COMPARE 
    >= F_NLSSORT('旮 'AND V_COMPARE <= F_NLSSORT('腂 'THEN
     V_RETURN :
    = V_RETURN || 'G';
     ELSIF V_COMPARE 
    >= F_NLSSORT('妎 'AND V_COMPARE <= F_NLSSORT('夻 'THEN
     V_RETURN :
    = V_RETURN || 'H';
     ELSIF V_COMPARE 
    >= F_NLSSORT('丌 'AND V_COMPARE <= F_NLSSORT('攈 'THEN
     V_RETURN :
    = V_RETURN || 'J';
     ELSIF V_COMPARE 
    >= F_NLSSORT('咔 'AND V_COMPARE <= F_NLSSORT('穒 'THEN
     V_RETURN :
    = V_RETURN || 'K';
     ELSIF V_COMPARE 
    >= F_NLSSORT('垃 'AND V_COMPARE <= F_NLSSORT('擽 'THEN
     V_RETURN :
    = V_RETURN || 'L';
     ELSIF V_COMPARE 
    >= F_NLSSORT('嘸 'AND V_COMPARE <= F_NLSSORT('椧 'THEN
     V_RETURN :
    = V_RETURN || 'M';
     ELSIF V_COMPARE 
    >= F_NLSSORT('拏 'AND V_COMPARE <= F_NLSSORT('瘧 'THEN
     V_RETURN :
    = V_RETURN || 'N';
     ELSIF V_COMPARE 
    >= F_NLSSORT('筽 'AND V_COMPARE <= F_NLSSORT('漚 'THEN
     V_RETURN :
    = V_RETURN || 'O';
     ELSIF V_COMPARE 
    >= F_NLSSORT('妑 'AND V_COMPARE <= F_NLSSORT('曝 'THEN
     V_RETURN :
    = V_RETURN || 'P';
     ELSIF V_COMPARE 
    >= F_NLSSORT('七 'AND V_COMPARE <= F_NLSSORT('裠 'THEN
     V_RETURN :
    = V_RETURN || 'Q';
     ELSIF V_COMPARE 
    >= F_NLSSORT('亽 'AND V_COMPARE <= F_NLSSORT('鶸 'THEN
     V_RETURN :
    = V_RETURN || 'R';
     ELSIF V_COMPARE 
    >= F_NLSSORT('仨 'AND V_COMPARE <= F_NLSSORT('蜶 'THEN
     V_RETURN :
    = V_RETURN || 'S';
     ELSIF V_COMPARE 
    >= F_NLSSORT('侤 'AND V_COMPARE <= F_NLSSORT('籜 'THEN
     V_RETURN :
    = V_RETURN || 'T';
     ELSIF V_COMPARE 
    >= F_NLSSORT('屲 'AND V_COMPARE <= F_NLSSORT('鶩 'THEN
     V_RETURN :
    = V_RETURN || 'W';
     ELSIF V_COMPARE 
    >= F_NLSSORT('夕 'AND V_COMPARE <= F_NLSSORT('鑂 'THEN
     V_RETURN :
    = V_RETURN || 'X';
     ELSIF V_COMPARE 
    >= F_NLSSORT('丫 'AND V_COMPARE <= F_NLSSORT('韻 'THEN
     V_RETURN :
    = V_RETURN || 'Y';
     ELSIF V_COMPARE 
    >= F_NLSSORT('帀 'AND V_COMPARE <= F_NLSSORT('咗 'THEN
     V_RETURN :
    = V_RETURN || 'Z';
     
    END IF;
     
    END LOOP;
     
    RETURN V_RETURN;
     
    END;


     select FN_GETSPELLCODING('爱') from dual

  • 相关阅读:
    《Java编程思想》学习笔记(一)
    SpringJDBC中jdbcTemplate 的使用
    JAVA数据库连接池C3p0 以及阿里Druid提供的连接池
    SpringJDBC :jdbcTemplate在连接是出现 org/springframeworkbc/core/JdbcTemplate : Unsupported major.minor version 52.0 异常解决
    JDBC事物的处理
    jdbc连接模拟用户登陆密码判断
    Java读取.properties配置文件并连接数据库
    JDBC的基本概念
    MySql数据库常用语句汇总
    JDBC连接各种数据库的方法,连接MySql,Oracle数据库
  • 原文地址:https://www.cnblogs.com/dooom/p/1676735.html
Copyright © 2011-2022 走看看