May*_*you 9 sql sql-server null sql-server-2005
我有SQL表,有大量的列.出于某种原因,某些列具有空单元而不是NULL单元.我想让所有列中的所有空单元格都为NULL.
我知道单列的方法是:
UPDATE your_table SET column = NULL WHERE column = ''
Run Code Online (Sandbox Code Playgroud)
但是,我不确定如何有效地为所有列执行类似的逻辑,而不必逐个编写列名.
谢谢,
Rob*_*t N 22
运行以下查询:
SELECT 'UPDATE yourtable SET ' + name + ' = NULL WHERE ' + name + ' = '''';'
FROM syscolumns
WHERE id = object_id('yourtable')
AND isnullable = 1;
Run Code Online (Sandbox Code Playgroud)
此查询的输出将是一块SQL脚本,如下所示:
UPDATE yourtable SET column1 = NULL WHERE column1 = '';
UPDATE yourtable SET column2 = NULL WHERE column2 = '';
UPDATE yourtable SET column3 = NULL WHERE column3 = '';
-- etc...
Run Code Online (Sandbox Code Playgroud)
将该SQL脚本复制并粘贴到新查询中并运行它以更新所有列.
归档时间: |
|
查看次数: |
22949 次 |
最近记录: |