我有很多列SQL表。由于某些原因,有些列有空单元格,而不是NULL单元格。我想让所有列中的空单元格都是NULL。) w6 o8 M- n) a# G
我知道单列的方式是:' o) H3 q* v+ s5 s
UPDATE your_table SET column = NULL WHERE column = ''然而,我不确定如何有效地执行所有列的类似逻辑,而不是一个接一个地编写列名。: c( O ^* E. k% r3 {
谢谢,8 C. n/ J% Y# c0 v
( |7 E( c i, B& n$ ^: U1 R解决方案: ' _5 Y+ L9 e" h/ P) f3 a; ?
以下操作查询:2 X+ Q; @" M3 B, A3 y
SELECT 'UPDATE yourtable SET ' name ' = NULL WHERE ' name ' = '''';'FROM syscolumnsWHERE id = object_id('yourtable') AND isnullable = 1;查询的输出如下所示SQL脚本块: # T7 Y( X G% B" [" tUPDATE yourtable SET column1 = NULL WHERE column1 = '';UPDATE yourtable SET column2 = NULL WHERE column2 = '';UPDATE yourtable SET column3 = NULL WHERE column3 = '';-- etc...复制该SQL将脚本粘贴到新查询中,然后操作它更新所有列。