[英]Replace ; with blank in SQL
我有一张这样的表:
DECLARE @T TABLE
(note VARCHAR (50))
INSERT @T
SELECT 'Amplifier'
UNION ALL SELECT ';'
UNION ALL SELECT 'Regulator'
如何用空白( ''
)替换分号( ';'
''
)。
预期输出:
Amplifier
'' -- here semicolon replace with blank
Regulator
如果您想从任何输出的单元格中替换所有分号,您可以像这样使用REPLACE
:
SELECT REPLACE(note,';','') AS [note] FROM @T
从给定的表中获取,使用CASE
语句:
SELECT CASE WHEN note = ';' THEN '' ELSE note END AS note FROM @T;
replace()将替换所有出现的字符。 看起来你不想那样。 此表达式仅替换整个字符串的完全匹配项。
看起来您需要替换所有分号:
DECLARE @T TABLE
(note VARCHAR (50))
INSERT INTO @T
SELECT REPLACE(SourceColumn, ';', '')
FROM SourceTable
SQL Server 2017 引入了 TRANSLATE 函数,您可以在其中指定要替换的字符列表
SELECT TRANSLATE('MAX(0,MIN(h-36,8))', '(,-)', ' ') -->'MAX 0 MIN h 36 8 '
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.