首页 > 解决方案 > 如果表匹配,则将值附加到多值字段中

问题描述

我有两张桌子。一个主表和一个源表。在主表中,我有一个名为“已完成”的多值字段,其中包含 [Applied, Pledged, Transcripts]。我想要发生的是,如果主记录和源记录匹配,则将“承诺”附加到多值字段中。到目前为止,这是我的代码:

INSERT INTO Contacts ( Completed.[Value] )
VALUES ('Pledged')
FROM Source
WHERE Contacts.Email = Source.Email;

当我在 Access 上运行查询时,它告诉我“SQL 语句末尾缺少分号 (;)。我不确定我应该调整什么。感谢所有帮助!

标签: sqlms-access

解决方案


考虑使用 SELECT 子句而不是 VALUES 的 INNER JOIN 而不是 WHERE。

INSERT INTO Contacts (Completed.[Value])
SELECT 'Pledged' AS Data
FROM Source INNER JOIN Contacts ON Source.Email = Contacts.Email;

推荐阅读