MS SQL Server INSERT值如果为NULL

Luk*_*uka 0 sql database sql-server-2008

美好的一天

我有表1:

COLUMN1    COLUMN2   Column3
----------------------------
1             A        K
2             NULL     K
3             NULL     D
...           ...      ...
Run Code Online (Sandbox Code Playgroud)

我需要

COLUMN1    COLUMN2   Column3
----------------------------
1             A        A
2             K        K
3             D        D
...           ...      ...
Run Code Online (Sandbox Code Playgroud)

我坚持执行自己的代码,无法理解为什么服务器尝试将其插入COLUMN3?

感谢您的任何意见

INSERT INTO Table1 (COLUMN2)
    SELECT CLoumn3
    FROM Table1
    WHERE Column2 IS NULL; 
Run Code Online (Sandbox Code Playgroud)

产生的错误:

消息515,级别16,状态2,第1行
无法将值NULL插入表'TABLE1'的列'Column3'中;列不允许为空。INSERT失败。

这只是原始表具有更多列的示例。

Gor*_*off 5

我认为您想要一个update

update table1
    set column2 = column3
    where column2 is null;
Run Code Online (Sandbox Code Playgroud)

insert在表格中插入新行update更改现有行中的值。