空白我有这样的一个表:替换;在SQL
DECLARE @T TABLE
(note VARCHAR (50))
INSERT @T
SELECT 'Amplifier'
UNION ALL SELECT ';'
UNION ALL SELECT 'Regulator'
我怎么能代替分号(3210)与空白(''
)。
预期输出:
Amplifier
'' -- here semicolon replace with blank
Regulator
空白我有这样的一个表:替换;在SQL
DECLARE @T TABLE
(note VARCHAR (50))
INSERT @T
SELECT 'Amplifier'
UNION ALL SELECT ';'
UNION ALL SELECT 'Regulator'
我怎么能代替分号(3210)与空白(''
)。
预期输出:
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()将取代所有出现的字符。似乎并不像你想要的那样。该表达式仅替换整个字符串的精确匹配。
它看起来像你需要REPLACE所有分号:
DECLARE @T TABLE
(note VARCHAR (50))
INSERT INTO @T
SELECT REPLACE(SourceColumn, ';', '')
FROM SourceTable
我认为这个担忧MS SQL Server? –