USE [StockManageSystemV2]
GO
/****** Object:  UserDefinedFunction [dbo].[PinYin]    Script Date: 2016-08-07 11:19:20 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER FUNCTION [dbo].[PinYin] ( @STR NVARCHAR() )
RETURNS NVARCHAR()
AS
    BEGIN
        DECLARE    @INTLEN INT;
        DECLARE    @STRRET NVARCHAR();
        DECLARE    @TEMP NVARCHAR();
        SET @INTLEN = LEN(@STR);
        SET @STRRET = '';
        WHILE @INTLEN >
            BEGIN
                SET @TEMP = '';
                SELECT    @TEMP = CASE WHEN SUBSTRING(@STR, @INTLEN, ) >= '帀' THEN 'Z'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '丫' THEN 'Y'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '夕' THEN 'X'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '屲' THEN 'W'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '他' THEN 'T'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '仨' THEN 'S'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '呥' THEN 'R'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '七' THEN 'Q'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '妑' THEN 'P'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '噢' THEN 'O'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '拏' THEN 'N'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '嘸' THEN 'M'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '垃' THEN 'L'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '咔' THEN 'K'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '丌' THEN 'J'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '铪' THEN 'H'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '旮' THEN 'G'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '发' THEN 'F'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '妸' THEN 'E'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '咑' THEN 'D'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '嚓' THEN 'C'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '八' THEN 'B'
                                     WHEN SUBSTRING(@STR, @INTLEN, ) >= '吖' THEN 'A'
                                     ELSE RTRIM(LTRIM(SUBSTRING(@STR, @INTLEN, )))
                                END;
        --对于汉字特殊字符,不生成拼音码
                IF ( ASCII(@TEMP) >  )
                    SET @TEMP = '';
        --对于英文中小括号,不生成拼音码
                IF @TEMP = '('
                    OR @TEMP = ')'
                    SET @TEMP = '';
                SELECT    @STRRET = @TEMP + @STRRET;
                SET @INTLEN = @INTLEN - ;
            END;
        RETURN @STRRET;
    END;

sql中写标量函数生成大写拼音首字母的更多相关文章

  1. python3.4.3将汉字转换为大写拼音首字母

    from pypinyin import pinyin a=pinyin(u'杨强',type=FIRST_LETTER)    --->此时返回一个列表并赋给a(元素也是列表) b=[]  - ...

  2. JS获取中文拼音首字母,并通过拼音首字母高速查找页面内的中文内容

    实现效果: 图一: 图二: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGVzdGNzX2Ru/font/5a6L5L2T/fontsize/400/f ...

  3. mysql数据库中查询汉字的拼音首字母

    本人提供的方法有如下特点: 1.代码精简,使用简单,只要会基本的SQL语句就行2.不用建立mysql 函数等复杂的东西3.汉字库最全,可查询20902个汉字 方法如下: 1.建立拼音首字母资料表Sql ...

  4. C#&Sql获取中文字符拼音首字母的方法

    C#获取字符拼音首字母,可以存储在数据库中以备将来按字母搜索的需求. public static string GetAc(string s) { try { string temp = Servic ...

  5. MySQL通过函数获取字符串汉字拼音首字母大写字符串

    DELIMITER $$ DROP FUNCTION IF EXISTS `Fun_GetPY`$$ CREATE FUNCTION `HIS`.`Fun_GetPY` (in_string VARC ...

  6. (转载)delphi中获取汉字的拼音首字母

    delphi中获取汉字的拼音首字母1.py: array[216..247] of string = ({216}'CJWGNSPGCGNESYPB' + 'TYYZDXYKYGTDJNMJ' + ' ...

  7. 在PHP中,将一个汉字数组按照拼音首字母进行排序

    (之前发的这篇博文因为含有敏感关键字,只好重发一遍了) <?php $str = "我们可以在浏览器中看到,当鼠标移到元素上时,元素开始向右移动,开始比较慢,之后则比较快,移开时按原曲 ...

  8. mysql、oracle 中按照拼音首字母排序

    mysql中按照拼音首字母排序 convert(name using gbk) ASC 注:name 为字段名称 oracle中按照拼音首字母排序 nlssort(enterprise_name,'N ...

  9. sql获取汉字的拼音首字母

    if exists (select * from sysobjects where id = object_id(N'[fn_ChineseToSpell]') and xtype in (N'FN' ...

随机推荐

  1. PHP加速处理插件 Zend Optimizer,Zend Guard Loader 和 Zend Opcache 区别

    PHP 5.3.X   以前版本 为  Zend Optimizer PHP 5.3.X   之后 更名为  Zend Guard Loader 可以帮助php执行加密后的php代码 安装实例以Ubu ...

  2. chapter1 渗透测试与metasploit

    网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...

  3. C语言中常量

    C语言中常量 不具有数据类型的常量------宏常量 宏常量定义:用一个标识符号来表示的常量,又称为符号常量. 宏定义:  #define 标识符  字符串                 ----- ...

  4. Nginx 教程的连载计划

    下面以教程系列为单位,列举出了已经发表和计划发表的连载教程: Nginx 新手起步 Nginx 是如何匹配 URI 的 Nginx 变量漫谈 Nginx 配置指令的执行顺序 Nginx 的 if 是邪 ...

  5. zend framework virtualhost设置方法

    Phpunit 的用法 php phpunit.phar 就可以运行phpunit了 修改本地域名vhost F:\Tools\wamp\bin\apache\apache2.4.9\conf\ext ...

  6. 收藏的技术文章链接(ubuntu,python,android等)

    我的收藏 他山之石,可以攻玉 转载请注明出处:https://ahangchen.gitbooks.io/windy-afternoon/content/ 开发过程中收藏在Chrome书签栏里的技术文 ...

  7. poj 1068 Parencodings(栈)

    题目链接:http://poj.org/problem?id=1068 思路分析:对栈的模拟,将栈中元素视为广义表,如 (((()()()))),可以看做 LS =< a1, a2..., a1 ...

  8. 从数据库提取数据通过jstl显示在jsp页面上

    从数据库提取数据通过jstl显示在jsp页面上 1.ConnectDB.java连接数据库,把数据转换成list public class ConnectDB { private final stat ...

  9. 基于TCP协议的项目架构之Socket流传输的实现

    项目背景  某银行的影像平台由于使用时间长,服务器等配置原因,老影像系统满足不了现在日益增长的数据量的需求,所以急需要升级改造.传统的影像平台使用的是Oracle数据库和简单的架构来存储数据(视频.图 ...

  10. Spring Boot实现文件下载功能

    我们只需要创建一个控制器(Controler)文件,即Controller目录下的File_Download.java,其完整目录如下: @Controller public class File_D ...