SQL-Server 2008:正确封装字段

时间:2011-04-28 15:08:37

标签: sql sql-server-2008 string

  

可能重复:
  SQL Server: Make all UPPER case to Proper Case/Title Case

如果我有一个字符串“HELLO WORLD”

我怎样才能在第一个字母之后小写每个字母,但保留骆驼外壳:我得到:

Hello World

1 个答案:

答案 0 :(得分:0)

如果可能的话,我会尝试亲自在客户端上做这件事......但你可以试试这个:

CREATE FUNCTION [dbo].[CamelCase]
(@Str varchar(8000))
RETURNS varchar(8000) AS
BEGIN
  DECLARE @Result varchar(2000)
  SET @Str = LOWER(@Str) + ' '
  SET @Result = ''
  WHILE 1=1
  BEGIN
    IF PATINDEX('% %',@Str) = 0 BREAK
    SET @Result = @Result + UPPER(Left(@Str,1))+
    SubString  (@Str,2,CharIndex(' ',@Str)-1)
    SET @Str = SubString(@Str,
      CharIndex(' ',@Str)+1,Len(@Str))
  END
  SET @Result = Left(@Result,Len(@Result))
 RETURN @Result
END