9

如果它们尚不存在,我正在尝试将行插入到表“数据”中。

对于 Export$ 中的每一行,我需要代码来检查与 Period(日期)和 ID(int)匹配的行的“数据” - 如果这些行尚不存在,则应创建它们。

我很确定我的“不存在”部分是错误的——最好的方法是什么?感谢你的帮助

    IF NOT EXISTS (SELECT * FROM Data, Export$ WHERE Data.ID = Export$.ID AND Data.Period = Export$.Period)
    INSERT INTO Data (Period, Performance, ID)
    SELECT Period, [Return], [ID] FROM Export$
4

2 回答 2

13

试试这个:

INSERT INTO Data (Period, Performance, ID)
SELECT Period, [Return], [ID] 
FROM Export$ e
where not exists (
select *
from Data
where  ID = e.ID and Period = e.Period)
于 2013-02-12T23:47:34.293 回答
12

尝试类似的东西,需要调整以适合您的桌子

insert into data
select * from export
left join data on data.id = export.id
                     and data.period = export.period
where data.id is null
于 2013-02-12T23:46:56.363 回答