将数据库字段值从一个表复制到另一个表

时间:2017-10-02 14:25:08

标签: sybase-asa

我使用Sybase ASA7,我在数据库中有2个表。

两个表都包含2个字段 - ID EventDateTime ,包含20条记录。

两个表中

ID 字段= 1到20。

表1针对每个 ID 填写了 EventDateTime 字段,表2没有填写,它们只是空值。

如何循环并将每个 eventDateTime 字段从表1复制到表2,以便两个表匹配?

不熟悉SQL,所以道歉。

1 个答案:

答案 0 :(得分:1)

一个选项:

update Table2
set    EventDateTime = Table1.EventDateTime
from   Table2
join   Table1
on     Table2.ID            =  Table1.ID
and    Table2.EventDateTime is NULL

另一个选项,基于您的注释,表是相同的结构并具有相同的数据(NULL EventDateTime列除外):

delete Table2

insert into Table2 (ID, EventDateTime) select ID, EventDateTime from Table1

虽然如果在Table2上有任何删除/插入触发器和/或RI约束,但这可能是不可取的(取决于触发器逻辑)或可行(在PK / FK约束的情况下)。