【发布时间】:2017-11-19 16:54:24
【问题描述】:
尝试从 Excel 内部连接到不同的数据源(VFP 数据库和 Access 文件)以根据来自两个源的条件提取特定数据并遇到创建组合查询的问题。对 VFP 表的查询已经完成,现在我需要处理 MS Access 表。 我尝试过以下方式,但没有成功:
"left join [tblInAccess] in " & "[Microsoft.ACE.OLEDB.12.0;Data
Source='D:\Data\temp_dump.accdb'] on [tblInVFP].ID=[tblInAccess].ID"
谁能指出正确的语法?
UPD: 整个查询代码(仅查询):
SELECT DB.DATE AS DBF_DATE,
DB.EN AS DBF_EN,
DB.NU AS DBF_NUMERO,
LIB.LL AS DBF_LIBELLE,
SUM(IIF(DB.DEBIT = '1000', - DB.AMOUNT, 0.00) + IIF(DB.CREDIT = '1000', DB.AMOUNT, 0.00))
FROM [VFP_DB] AS DB
LEFT JOIN (
SELECT LT.LL AS LL,
LT.EN
FROM [VFP_DB] AS LT
) AS LIB ON DB.EN = LIB.EN
LEFT JOIN (
SELECT id
FROM [Provider=Microsoft.ACE.OLEDB.12.0;Data Source="D:\Data\temp_dump.accdb";].[tblTemp]
) TEMP_DB ON DB.NN = TEMP_DB.id
WHERE DB.DATE >= { ^ 2015.12 .30 }
AND DB.DATE <= { ^ 2017.01 .07 }
AND TEMP_DB.id IS NULL
GROUP BY DB.DATE,
DB.NU,
DB.EN,
LIB.LL
HAVING SUM(IIF(DB.DEBIT = '1000', - DB.AMOUNT, 0.00) + IIF(DB.CREDIT = '1000', DB.AMOUNT, 0.00)) <> 0
ORDER BY DB.DATE,
DB.NU,
DB.EN ASC
实际上,如果没有第二个“左连接”,它可以正常工作。尝试引用Access数据库时出现问题
【问题讨论】:
-
欢迎来到 StackOverflow。虽然它不是我的域,但我认为您只有部分查询。拥有整个查询以及您遇到的错误将很有帮助。
-
@ZiyanJunaideen 所说的,+ 您还需要共享执行查询的代码。这都是相关的。
标签: sql excel vba ms-access ado