2011-10-19 91 views

回答

92

聽起來你只在一個表中工作,所以是這樣的:

update your_table 
set B = A 
where B is null 
15
UPDATE YourTable 
SET ColumnB=ColumnA 
WHERE 
ColumnB IS NULL 
AND ColumnA IS NOT NULL 
4

我不認爲其他的例子是,你在找什麼。如果你只是從同一個表中的另一列更新一列,你應該可以使用這樣的東西。

update some_table set null_column = not_null_column where null_column is null 
12

我會做這種方式:

UPDATE YourTable SET B = COALESCE(B, A); 

COALESCE是返回其第一個非空參數的函數。

在這個例子中,在B上的給定行不爲空,則更新是一個空操作。

如果B爲空,則COALESCE將跳過它並使用A代替。

0

UPDATE YourTable
SET ColumnB = ColumnA
WHERE
ColumnB IS NULL
AND ColumnA IS NOT NULL;

相關問題