由于一个公司的OA上用到速查编码,必须得到每个字的首字母,便于以后的查询(如:开发部,则为KFB),到网上找到了一些资料,是一个存储过程。
存储过程为:
CREATE  proc LOG_FindCode
@strName nvarchar(20), 
@strFindCode nvarchar(20) output
as 
begin 
declare @word nchar(1),@PY nvarchar(4000) 
set @PY='' 
while len(@strName)>0 
begin 
set @word=left(@strName,1) 
set @PY=@PY+(case when unicode(@word) between 19968 and 19968+20901 
then (select top 1 PY from ( 
select 'A' as PY,N'