我需要将数据从一种模式转换为MS Access数据库中的另一种模式。这涉及编写查询以从旧模式中选择数据,然后将查询结果插入新模式中的表中。下面是我正在尝试做的一个例子。下面的SELECT组件工作正常,但是INSERT组件不工作。有人可以告诉我如何解决以下问题,以便有效地将SELECT语句的结果插入目标表吗?
INSERT INTO CompaniesTable
(CompanyName)
VALUES
(
SELECT DISTINCT
IIF(a.FIRM_NAME IS NULL, b.SUBACCOUNT_COMPANY_NAME, a.FIRM_NAME) AS CompanyName
FROM
(SELECT ContactID, FIRM_NAME, SUBACCOUNT_COMPANY_NAME FROM qrySummaryData) AS a
LEFT JOIN
(SELECT ContactID, FIRM_NAME, SUBACCOUNT_COMPANY_NAME FROM qrySummaryData) AS b
ON a.ContactID = b.ContactID
);
目标表(CompaniesTable)的定义为:
CompanyID Autonumber
CompanyName Text
Description Text
WebSite Text
Email Text
TypeNumber Number
也许您有错字,但是将表联接到自身上并不需要联接,这应该可以正常工作。在select语句上插入时,您无需使用values关键字。
INSERT INTO CompaniesTable (CompanyName,Description,Website,Email,TypeNumber)
SELECT DISTINCT IIF(FIRM_NAME IS NULL, SUBACCOUNT_COMPANY_NAME, FIRM_NAME),
'','','',0
FROM qrySummaryData
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句