当前位置: 首页 > 图文教程 > 数据库 > MSSQL > Sql server 如何得到汉字的声母

MSSQL
SQL Server 2005查看文件及文件组的语句
用最简单的步骤备份SQL数据库的文件到本地
在SQL Server数据库中拆分字符串函数
SQL Server数据库维度表和事实表概述
Microsoft SQL Server数据库日志截断
SQL Server 2000 SP4与数据链接池问题
SQL Server游标使用实例
SQL Server 2008:传递表值参数
微软SQL Server 2008令商业智能平民化
将SQL2000数据库升级到SQL2005
在SQL Server2005中进行错误捕捉
动态SQL语句的编程
SQL Server 2008升级报表服务器数据库
在SAN上创建SQL Server群集
SQL查询中的转义序列不对的解决办法
SQL2005一个不起眼但很实用的函数
管理SQL Server数据库和应用元数据
选择SQL Server恢复模型确保正确备份
查看SQL执行计划常用方法
SQL2008增强的集成开发环境

MSSQL 中的 Sql server 如何得到汉字的声母


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 145 ::
收藏到网摘: n/a

 

在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'