use*_*762 4 sql sql-server-2008
有没有一种快速的方法可以将表中所有空字段更改为空字段。我有很多列,所以想知道是否有办法按表而不是按列来做。
我需要类似的东西
update table 1
set * = ''
where * is null
Run Code Online (Sandbox Code Playgroud)
但显然这是不正确的语法
此代码将生成更新语句列表,您只需运行它:
SELECT 'update '+ so.name+' set '+sc.name+'= '''' where '+sc.name+' is null '
FROM sysobjects so
JOIN syscolumns sc ON so.id = sc.id
JOIN systypes st ON sc.xtype=st.xtype
where so.type = 'U'
and st.name in('varchar','char')
--and so.name = 'tab' <--- if you need update only one table
Run Code Online (Sandbox Code Playgroud)
在这里(sql fiddle)你可以看到它是如何工作的。
| 归档时间: |
|
| 查看次数: |
10748 次 |
| 最近记录: |