【问题标题】:SQL replace all instances of word in a fieldSQL替换字段中单词的所有实例
【发布时间】:2010-09-18 00:16:50
【问题描述】:

有什么办法吗?替换函数只替换第一个实例。

谢谢。

【问题讨论】:

  • 我认为你被误导了。 REPLACE 将替换所有出现,而不仅仅是第一个。

标签: sql sql-server


【解决方案1】:

在新查询中试试这个:

 DECLARE @Phrase varchar(1000)
 SELECT @Phrase = 'az a1 az a3 az a4 az a6'
 SELECT REPLACE(@Phrase, 'az', 'B')

这会导致您的预期/期望行为:

B a1 B a3 B a4 B a6

【讨论】:

    【解决方案2】:

    根据 MSDN:

    Replaces all occurrences of a specified string value with another string value.
    

    试试这个:

    DECLARE @x nvarchar(50)
    SET @x = 'BobbyBobbyBobby'
    
    SET @x = replace(@x, 'Bobby', '')
    
    PRINT '!' + @x + '!'
    

    它会打印出来

    !!
    

    有关详细信息,请参阅MSDN 文档。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-30
      • 2021-08-16
      • 1970-01-01
      • 2012-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多