你有库了就好办了。 例如: tablename zi wubi 王 G 女 V 日 J create function GetSM(@zi varchar(20)) returns varchar(50) as begin declare @s varchar(50) select @s=wubi from tablename where zi=@zi return @s end
这个 某列 如果量大的话,估计较慢。方法就是substring每个字去你的库查。
declare @table table (hz varchar(2),code varchar(1)) insert into @table select '我','q' union all select '人','w' union all select '有','e' union all select '的','r' union all select '和','t' union all select '主','y' union all select '产','u'declare @t varchar(20) set @t='我有主产人'declare @result varchar(20) set @result=''declare @i int set @i=1 while @i<=len(@t) begin --declare @a varchar(100) --select set @result=@result+(select code from @table where hz=substring(@t,@i,1)) set @i=@i+1 end select @result '五笔首码' /* 五笔首码 -------------------- qeyuw */
create function GetWBSM(@t varchar(50)) returns varchar(50) as begin declare @result varchar(20) set @result='' declare @i int set @i=1 while @i<=len(@t) begin set @result=@result+ (select code from 你的表名 where hz=substring(@t,@i,1)) set @i=@i+1 end return @result endselect dbo.GetWBSM('我有主产人')表名和字段名请自行更改。
例如:
tablename
zi wubi
王 G
女 V
日 J
create function GetSM(@zi varchar(20))
returns varchar(50)
as
begin
declare @s varchar(50)
select @s=wubi from tablename where zi=@zi
return @s
end
declare @table table (hz varchar(2),code varchar(1))
insert into @table
select '我','q' union all
select '人','w' union all
select '有','e' union all
select '的','r' union all
select '和','t' union all
select '主','y' union all
select '产','u'declare @t varchar(20)
set @t='我有主产人'declare @result varchar(20)
set @result=''declare @i int
set @i=1
while @i<=len(@t)
begin
--declare @a varchar(100)
--select
set @result=@result+(select code from @table where hz=substring(@t,@i,1))
set @i=@i+1
end
select @result '五笔首码'
/*
五笔首码
--------------------
qeyuw
*/
create function GetWBSM(@t varchar(50))
returns varchar(50)
as
begin
declare @result varchar(20)
set @result=''
declare @i int
set @i=1
while @i<=len(@t)
begin
set @result=@result+
(select code from 你的表名 where hz=substring(@t,@i,1))
set @i=@i+1
end
return @result
endselect dbo.GetWBSM('我有主产人')表名和字段名请自行更改。