sql的模糊查询
怎么通过首字母实现模糊查询?
例如: 查询 张三 输入zs即可查询出"张三"这个字符
[解决办法]
参考 http://topic.csdn.net/u/20090531/17/9a3a17dd-53d0-44d1-bc12-ac8a3daa78d8.html
[解决办法]
create function fun_getPY(@str nvarchar(4000)) returns nvarchar(4000)asbegin declare @word nchar(1) declare @PY nvarchar(4000) set @PY='' WHILE len(@str)>0 begin set @word=left(@str,1) set @PY=@PY+( case when unicode(@word) between 19968 and 19968+20901 then ( select top 1 PY from ( select 'A' as PY,N'驁' as word union all select 'B',N'簿' union all select 'C',N'錯' union all select 'D',N'鵽' union all select 'E',N'樲' union all select 'F',N'鰒' union all select 'G',N'腂' union all select 'H',N'夻' union all select 'J',N'攈' union all select 'K',N'穒' union all select 'L',N'鱳' union all select 'M',N'旀' union all select 'N',N'桛' union all select 'O',N'漚' union all select 'P',N'曝' union all select 'Q',N'囕' union all select 'R',N'鶸' union all select 'S',N'蜶' union all select 'T',N'籜' union all select 'W',N'鶩' union all select 'X',N'鑂' union all select 'Y',N'韻' union all select 'Z',N'咗' )T where word>=@word collate Chinese_PRC_CS_AS_KS_WS order by PY asc )else @word end ) set @str=right(@str,len(@str)-1) end return @PYendgoselect dbo.fun_getPY('dddd)drop function fun_getPY