汉语拼音首字母模糊化查询
来源:互联网 发布:阿里在线编程 编辑:程序博客网 时间:2024/05/23 15:22
在SQL中创建用户自定义拼音函数:
create function f_GetPy(@Str nvarchar(400))
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 @t select '吖','A' union all select '八','B'
union all select '嚓','C' union all select '咑','D'
union all select '妸','E' union all select '发','F'
union all select '旮','G' union all select '铪','H'
union all select '丌','J' union all select '咔','K'
union all select '垃','L' union all select '嘸','M'
union all select '拏','N' union all select '噢','O'
union all select '妑','P' union all select '七','Q'
union all select '呥','R' union all select '仨','S'
union all select '他','T' union all select '屲','W'
union all select '夕','X' union all select '丫','Y'
union all select '帀','Z'
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
go
--测试
select dbo.f_GetPy('东莞市') as 东莞市,dbo.f_GetPy('ab中c国人') as 中国人
--以后查询的时候,就能够调用上面的函数来实现汉字模糊查询
select * from 表 where dbo.f_getpy(字段)='zgyh'
create function f_GetPy(@Str nvarchar(400))
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 @t select '吖','A' union all select '八','B'
union all select '嚓','C' union all select '咑','D'
union all select '妸','E' union all select '发','F'
union all select '旮','G' union all select '铪','H'
union all select '丌','J' union all select '咔','K'
union all select '垃','L' union all select '嘸','M'
union all select '拏','N' union all select '噢','O'
union all select '妑','P' union all select '七','Q'
union all select '呥','R' union all select '仨','S'
union all select '他','T' union all select '屲','W'
union all select '夕','X' union all select '丫','Y'
union all select '帀','Z'
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
go
--测试
select dbo.f_GetPy('东莞市') as 东莞市,dbo.f_GetPy('ab中c国人') as 中国人
--以后查询的时候,就能够调用上面的函数来实现汉字模糊查询
select * from 表 where dbo.f_getpy(字段)='zgyh'
0 0
- 汉语拼音首字母模糊化查询
- 首字母模糊查询
- combotree按首字母模糊查询
- oracle中查询的数据按汉语拼音首字母排序
- C# 获取汉语拼音首字母
- 首字母自动匹配与模糊查询
- 数据查询支持中文拼音首字母模糊检索
- jquery easyui实现汉字拼音首字母模糊查询
- Android模糊查询(首字母、简拼、全拼,汉字)
- 取的汉语拼音首字母解决思路
- sql中文字段按照汉语拼音首字母排序
- 工具类-汉字转为汉语拼音首字母
- Oracle10g实现把汉字转换成汉语拼音首字母
- Java_获取汉字的汉语拼音首字母Java版
- Java_获取汉字的汉语拼音首字母Java版
- 汉字姓名怎么取到姓名的汉语拼音首字母
- Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选取联系人
- Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选取联系人
- 系统优化
- 春晚真的应该安乐死吗
- linux和windows下mysql密码怎样清空!
- 飞机大战之一:让背景先动起来
- 创始元灵 鸿钧老祖、如来、菩提老祖、及孙悟空
- 汉语拼音首字母模糊化查询
- red hat 6.3下的terminal下文件名显示乱码
- CentOS系统主机名与IP地址、网关、DNS服务的配置
- 多媒体定时器
- handler机制
- Monkey test——Mr.Monkey 移动测试培训课后总结(三)
- OpenGL: 模型视图矩阵变换
- sql 外键
- JS 进程提示框 显示当前进程 搭配iframe加载一次操作 可控制切换进程效果