根据汉字的首字母生产拼音码进行查询
公司里原先的代码,实在没看懂。。。。
主要是在Sql中实现
USE [Xpos_refer_database] GO /****** Object: UserDefinedFunction [dbo].[GetLetter] Script Date: 04/07/2012 09:22:25 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER function [dbo].[GetLetter](@str nvarchar(4000),@type int) returns nvarchar(4000) -- WITH ENCRYPTION as begin declare @intLen int --長度declare @strRet nvarchar(4000)--返回值declare @temp nvarchar(100) --臨時變量set @intLen = len(@str) set @strRet = '' declare @i int --臨時變量select @i=1 while (@intLen > 0 and @type>0) begin set @temp = '' select @temp = case when substring(@str,@i,1) > = '帀 ' then 'Z' when substring(@str,@i,1) > = '丫 ' then 'Y' when substring(@str,@i,1) > = '夕 ' then 'X' when substring(@str,@i,1) > = '屲 ' then 'W' when substring(@str,@i,1) > = '他 ' then 'T' when substring(@str,@i,1) > = '仨 ' then 'S' when substring(@str,@i,1) > = '呥 ' then 'R' when substring(@str,@i,1) > = '七 ' then 'Q' when substring(@str,@i,1) > = '妑 ' then 'P' when substring(@str,@i,1) > = '噢 ' then 'O' when substring(@str,@i,1) > = '拏 ' then 'N' when substring(@str,@i,1) > = '嘸 ' then 'M' when substring(@str,@i,1) > = '垃 ' then 'L' when substring(@str,@i,1) > = '咔 ' then 'K' when substring(@str,@i,1) > = '丌 ' then 'J' when substring(@str,@i,1) > = '铪 ' then 'H' when substring(@str,@i,1) > = '旮 ' then 'G' when substring(@str,@i,1) > = '发 ' then 'F' when substring(@str,@i,1) > = '妸 ' then 'E' when substring(@str,@i,1) > = '咑 ' then 'D' when substring(@str,@i,1) > = '嚓 ' then 'C' when substring(@str,@i,1) > = '八 ' then 'B' when substring(@str,@i,1) > = '吖 ' then 'A' else rtrim(ltrim(substring(@str,@i,1))) end --对于汉字特殊字符,不生成拼音码 if (ascii(@temp)> 127) set @temp = ' ' --对于英文中小括号,不生成拼音码 if @temp = '(' or @temp = ')' set @temp = ' ' select @strRet = @strRet +@temp set @intLen = @intLen - 1 if @type<=10 set @type=@type-1 set @i=@i+1 end--while return lower(@strRet) end
这个函数是在Sql中“标量值函数”下面的
查询的Sql语句:
select distinct D_CITY as 城市,upper(dbo.GetLetter(D_CITY,1)) as 拼音码 from ref_addr3 order by upper(dbo.GetLetter(D_CITY,1))
查询结果:
转载于:https://www.cnblogs.com/New-world/archive/2012/04/07/2435668.html
根据汉字的首字母生产拼音码进行查询相关推荐
- 获取汉字的首字母和拼音
/// /// 获取汉字的首字母和全拼 /// public class ChineseCode { protected string _CnTxt; protected string _EnTxt; ...
- Javascript 汉字转首字母的拼音 js文件(支持多音字的选择)
实现的效果如图: pinyin.jsp文件: <html> <head> <meta http-equiv="Content-Type" conten ...
- java将汉字转成拼音首字母大写字母_java实现将汉字转为首字母、拼音
本文转自java实现将汉字转为拼音 作者itRed 本人仅稍作整理,并提出一些问题.问题的话暂时没时间处理,等以后有时间了再更新. 测试参数 String info="汉字转换为拼音&quo ...
- js汉字转换首字母大写拼音
//判断是否是汉字functionisChinese(temp) {var re = /[^\u4E00-\u9FA5]/;if (re.test(temp)) return false;return ...
- 根据中文名,自动生成首字母的拼音码或拼音码(两种方法)
#region 根据中文生成首字母(大写)/// <summary>/// 根据中文生成首字母(大写)/// </summary>/// <param name=&quo ...
- 最强汉字得到首字母拼音java版
网上有很多汉字得到首字母拼音的代码,基本都出自一种方式,通过对private static final char[] chartable = { '啊', * '芭', '擦', '搭', '蛾', ...
- 工具类:汉字得到首字母拼音
1.取得给定汉字串的首字母串,即声母串,只支持GB2312字符集中的汉字,部分汉字不能转换: import java.io.UnsupportedEncodingException;public fi ...
- java怎样获取汉字的首字母_[JAVA]获得汉字的拼音首字母
--sunfruit 提供了获得汉字的拼音首字母的方法 JDK版本 无版本限制 功能 实现了获得一个汉字的拼音首字母功能,为汉字排序提供了方便 欢迎大家提意见,交流 代码如下: /** * ...
- sql 汉字转首字母拼音
从网络上收刮了一些,以备后用 create function fun_getPY(@str nvarchar(4000)) returns nvarchar(4000) as begin declar ...
最新文章
- git配置报错fatal: Authentication failed for ‘‘问题解决
- c++ 使用throw抛出异常
- XAML Namespace http://schemas.microsoft.com/expression/blend/2008 is not resolved
- 正则中除了空格还有什么标识间距
- linux系统怎么建ftp服务器地址,Ubuntu Linux系统建立FTP服务器方法步骤
- hbase查询_【从零单排HBase】HBase高性能查询揭秘
- C# WinForm窗口最小化到系统托盘
- 政府安全资讯精选 2017年第十八期 工信部近三年将466个“问题APP”纳入黑名单;阿里云成为全球唯一完成德国C5云安全基础附加标准审计云服务商...
- 練習重繪TreeView控件
- Oracle 分页查询
- 机器人学导论,课后习题答案。
- 玩客云服务器怎么卖,玩客云使用教程;低价NAS怎么打造;玩客云现在还值得入手吗?-聚超值...
- R语言做生信分析系列(一)—— R软件简单安装
- Node.js学习笔记--进阶之路
- (转)如何使用Xcode的Targets来管理开发和生产版本的构建
- 数据湖架构Hudi(五)Hudi集成Flink案例详解
- Linux 重新加载 nginx 配置命令
- Vue之路由(SPA开发模式)
- http请求返回302处理方案
- Django 配置MySQL
热门文章
- 完全二叉树的最后一个非终端节点的下标
- idea中安装redis插件以及使用指南
- 关于运行程序时会产生的gmon.out文件
- 计算机硬盘 电机 利用,如何利用坏硬盘来做一个超强风扇,变废为宝 利用坏硬盘来做一个超强风扇,变废为宝的方法...
- 查找网站代码漏洞对网站木马后门查杀的清除
- Android源码解析
- CodeSmith中文乱码的解决方法
- 手把手教你如何在Windows PC的VirtualBox上安装macOS 10.15 Catalina系统
- PE结构详解(加壳脱壳必备知识)
- python的try和except用法_python中try及except使用