将多个空格删除到sybase中的单个空格

时间:2013-10-21 10:01:58

标签: tsql sybase

我使用以下查询将连续的多个空格删除到单个空格。循环不会出现在哪里我犯了错误。请帮我解决这个问题,或者如果有任何其他更好的想法来解决这个问题。

DECLARE @MEME_LAST_NAME  VARCHAR(22)
select @MEME_LAST_NAME = 'Kawamur    a        '

      WHILE (PATINDEX('%   %', @MEME_LAST_NAME ) > 0)
      BEGIN

      SET @MEME_LAST_NAME = STR_REPLACE(@MEME_LAST_NAME,'   ','')

      END
select @MEME_LAST_NAME

output should be : 'Kawamur a '

2 个答案:

答案 0 :(得分:1)

用空格替换空格
选择str_replace('Kawamur a',“”,NULL)

答案 1 :(得分:0)

set nocount on
declare @mesg_text varchar(50)
  select @mesg_text = "'Kawamur    a        '"
  while (charindex("  ",@mesg_text) > 0)
      begin
      select @mesg_text = str_replace(@mesg_text,"  "," ")
      end
 select @mesg_text

'Kawamur a'

单引号只放在字符串上以突出显示单个空格。