日期:2014-05-02 浏览次数:20473 次
                  
--创建如下用户自定义函数(UDF)
CREATE FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
                --ALTER FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
                RETURNS INTEGER
                AS
                BEGIN
  DECLARE @i INTEGER
  --DECLARE @Str1 VARCHAR(50)
  --DECLARE @Str2 VARCHAR(50)
  DECLARE @y INT
  --SET @Str1='a'
  --SET @Str2='A'
  SET @i=0
  --SELECT ASCII(SUBSTRING(@Str1,@i+1,1))
  SET @y=1
  DECLARE @iLen INT
  SET @iLen = LEN(LTRIM(RTRIM(@Str1)))
  IF LEN(LTRIM(RTRIM(@Str1))) < LEN(LTRIM(RTRIM(@Str2))) --THEN
  SET @iLen = LEN(LTRIM(RTRIM(@Str2)))
  WHILE (@i < @iLen)
  BEGIN
  IF (ASCII(SUBSTRING(@Str1,@i+1,1))=ASCII(SUBSTRING(@Str2,@i+1,1))) --THEN
  SET @i = @i +1
  ELSE
  BEGIN
  SET @y=0
  BREAK
  END
  END
  RETURN @y
  END
测试:
                select *
                from Table1
                Where dbo.StrComp(Field1,'aAbB') =1