2013-06-11 78 views

回答

2

尝试

UPDATE table1 
    SET b = a 
WHERE b IS NULL 

这里是SQLFiddle演示

如果bVARCHAR类型的,你考虑空字符串,当作没有价值,那么你可以做

UPDATE table1 
    SET b = a 
WHERE CHAR_LENGTH(COALESCE(b, '')) = 0 

这里是SQLFiddle演示

+0

可能第二种方法是强制进行全表扫描,对吧? –

0

您只需UPDATE你的表,并设置你的columnb同列仅在B柱是空

UPDATE table 
SET columnb = columna 
WHERE columnb IS NULL 

如果列已空字符串只是用WHERE columnb = ''

0

所以像:

UPDATE MyTable 
SET ColumnB = ColumnA 
WHERE ColumnB IS NULL; 
0
UPDATE tablename 
SET row1 = row2 
WHERE row2 IS NULL OR row2 = '' 

这会考虑r空行和空行。

否则 - 只是发布你所做的,所以我们可以验证它。

+0

非常感谢! – user2227359

相关问题