热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SqlServer的汉字转拼音码的函数

代码CodehighlightingproducedbyActiproCodeHighlighter(freeware)http:www.CodeHi
代码
--
--
 Definition for user-defined function f_GetPy : 
--
GO
create     function     [ dbo ] .f_GetPy( @str     nvarchar ( 4000 )) 
returns     nvarchar ( 4000
as  
begin  
declare     @strlen     int , @re     nvarchar ( 4000
declare     @t     table (chr    nchar ( 1 )   collate   Chinese_PRC_CI_AS,letter    nchar ( 1 )) 
insert     into     @t (chr,letter) 
    
select     ' 吖  ' ' '     union     all     select     ' 八  ' ' '     union     all  
    
select     ' 嚓  ' ' '     union     all     select     ' 咑  ' ' '     union     all  
    
select     ' 妸  ' ' '     union     all     select     ' 发  ' ' '     union     all  
    
select     ' 旮  ' ' '     union     all     select     ' 铪  ' ' '     union     all  
    
select     ' 丌  ' ' '     union     all     select     ' 咔  ' ' '     union     all  
    
select     ' 垃  ' ' '     union     all     select     ' 嘸  ' ' '     union     all  
    
select     ' 拏  ' ' '     union     all     select     ' 噢  ' ' '     union     all  
    
select     ' 妑  ' ' '     union     all     select     ' 七  ' ' '     union     all  
    
select     ' 呥  ' ' '     union     all     select     ' 仨  ' ' '     union     all  
    
select     ' 他  ' ' '     union     all     select     ' 屲  ' ' '     union     all  
    
select     ' 夕  ' ' '     union     all     select     ' 丫  ' ' '     union     all  
    
select     ' 帀  ' ' '  
    
select     @strlen = len ( @str ), @re =   '   '  
    
while     @strlen >   0  
    
begin  
        
select     top     1     @re = letter + @re , @strlen = @strlen - 1  
            
from     @t    a    where    chr  <= substring ( @str , @strlen , 1
            
order     by    chr    desc  
        
if     @@rowcount = 0  
            
select     @re = substring ( @str , @strlen , 1 ) + @re , @strlen = @strlen - 1  
    
end  
    
return ( @re
end

 

代码
// 用法一
string  sql  =   string .Format( " Name like '%{0}%' or dbo.f_GetPy(Name) like '{0}%'  " , goodsName);

// 用法二
string  sql  =   string .Format( @" Select * from (Select Company_Name from tb_enterprise where Company_Name like '%{1}%' or F_PINYIN(Company_Name) like '%{1}%' ) 
                                         WHERE ROWNUM <= {0} ORDER BY ROWNUM ASC
" , topCount, name);

 

 


推荐阅读
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 怎么在PHP项目中实现一个HTTP断点续传功能发布时间:2021-01-1916:26:06来源:亿速云阅读:96作者:Le ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文介绍了PE文件结构中的导出表的解析方法,包括获取区段头表、遍历查找所在的区段等步骤。通过该方法可以准确地解析PE文件中的导出表信息。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • 本文介绍了机器学习手册中关于日期和时区操作的重要性以及其在实际应用中的作用。文章以一个故事为背景,描述了学童们面对老先生的教导时的反应,以及上官如在这个过程中的表现。同时,文章也提到了顾慎为对上官如的恨意以及他们之间的矛盾源于早年的结局。最后,文章强调了日期和时区操作在机器学习中的重要性,并指出了其在实际应用中的作用和意义。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有