我有一个包含大约 100 列的表,是否可以同时对每一列执行选择替换而不是单独输入每一列,我正在尝试修剪 '"'
表中的每个字段。
SELECT
REPLACE(*, '"', '')
最佳答案
DECLARE @tablename nvarchar(100)= 'Test'
DECLARE @col nvarchar(max)
SELECT @col = coalesce(@col + ',', 'select ' ) +
case when data_type in ('varchar', 'char','nvarchar', 'nchar') then
'replace('+column_name+' , ''"'', '''') '+' as [' + column_name + ']' else '[' + column_name + ']' end
FROM INFORMATION_SCHEMA.COLUMNS a
WHERE table_name = @tablename
SET @col += ' from ' + @tablename
EXEC (@col)
关于sql - 在每一列上选择替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9804413/