使用具有空值的列修改表

时间:2010-07-08 19:23:34

标签: sql-server-2008

如果我想通过更改其中一列中的值来更新表中的记录,该怎么办?

我在表中有一列空记录(空值)。我想更改这些值并将另一个表中的值插入到这些记录中。

基本上我有一个表空了一列。我不想追加到表的末尾,而是从记录1开始插入。

2 个答案:

答案 0 :(得分:1)

请参阅SQL Server联机丛书的this page中的“将UPDATE语句与来自其他表的信息一起使用”部分。

答案 1 :(得分:1)

对于现有记录,您必须使用UPDATE更新该列,WHERE thatColumn IS NULL。

该列中的值是否应该与记录的其余部分有某种关系?我可以理解将现有记录初始化为非空值,或者使用UPDATE查询来填充该列中另一个表的数据,但所有这些都与原始行相关...

UPDATE old SET old.badColumn = new.newData
FROM oldTable old 
JOIN newTable new on old.someID = new.someID

这将在newTable中找到匹配oldTable的相关数据,并将badColumn更新为newTable中的一些数据...如果您需要更多帮助,请告诉我。