使用Query 2007访问新记录创建

时间:2010-12-31 05:13:17

标签: ms-access ms-access-2007

我正在尝试创建一个追加查询,该查询将新数据输入到一个表中,并将其与第二个表中的一组公共记录合并,然后将其添加到thord表中。 输入的新数据可以具有相同的字段但具有不同的组合,目前查询我不断更新第一个表中的所有记录,从而在第三个表中创建重复记录。

查询如下

INSERT INTO ANSWERS ( [CUST KEY], [BU KEY], [QUESTION NO], QUESTION )
SELECT [CUSTOMER INPUT].[CUST KEY], [CUSTOMER INPUT].[BU KEY], QUESTIONS.[QUESTION ID], QUESTIONS.QUESTION
FROM [CUSTOMER INPUT], QUESTIONS;

1 个答案:

答案 0 :(得分:0)

那应该是这样的:

INSERT INTO Answers ( 
    [Cust Key], [Bu Key], 
    [Question No], Question ) 
SELECT 
    [Customer Input].[Cust Key], 
    [Customer Input].[Bu Key], 
    Questions.[Question Id], Questions.Question 
FROM [Customer Input]
INNER JOIN Questions
ON [Customer Input].[Question Id] = Questions.[Question Id]
WHERE [Customer Input].[Cust Key]
NOT IN (SELECT [Cust Key] FROM Answers)

我已经猜到了问题和客户输入的共同领域,因此:

[Customer Input].[Question Id] = Questions.[Question Id]

顺便说一句,在生活变得过于复杂之前,请自己帮忙并摆脱字段和表格中的所有空格。您可以使用下划线或只删除它们。

您可能希望阅读Fundamental Microsoft Jet SQL for Access 2000
Intermediate Microsoft Jet SQL for Access 2000
Advanced Microsoft Jet SQL for Access 2000