附加查询 - 多个 Table 到单个 Table

Append Query - Multiple Tables into Single Table

我有 8 个查询都具有相同的设计等,以创建一个新的 table 但针对不同的标准,我想将它们附加到一个 table 中。

有什么方法可以用 VBA 代码或 UNION 来做到这一点吗?

SELECT tbl_SCCMQ.CONTRACT_ACCOUNT_NUMBER, tbl_SCCMQ.BP_Partner, tbl_SCCMQ.CONTRACT_NUMBER, tbl_SCCMQ.BILL_TO_DATE, tbl_SCCMQ.CONTRACT_START_DATE, tbl_SCCMQ.AGEING_DATE, tbl_SCCMQ.DateDiff, tbl_SCCMQ.PAYMENT_TYPE, tbl_SCCMQ.BP_Type, tbl_SCCMQ.[Next Bill Due Date], tbl_SCCMQ.[BAND], tbl_SCCMQ.RAG, tbl_SCCMQ.BILL_STATUS INTO tbl_01_Resi_CCQ_R1_4_Never_Billed_NoSS
FROM tbl_SCCMQ
WHERE (((tbl_SCCMQ.BP_Type)="B2C") AND ((tbl_SCCMQ.RAG) Like "R*") AND ((tbl_SCCMQ.BILL_STATUS)="First") AND ((tbl_SCCMQ.BILL_BLOCK) Is Null) AND ((tbl_SCCMQ.BILL_LOCK) Is Null) AND ((tbl_SCCMQ.INVOICE_LOCK) Is Null));

这里有两个table,

qry_01_Resi_CCQ_R1_4_Never_Billed_NoSS

qry_02_SME_CCQ_R1_4_Never_Billed_NoSS

并希望它们全部导入到主 table "Data"

我对 Access 和 VBA 等很陌生

你的问题看起来你知道如何解决这个问题。

注意:查询 1 到 8 必须具有相同数量的字段,并且数据类型必须与每个字段的顺序位置一致(在您的问题中断言。)

SQL 语法从查询创建新的 table(数据):

select *
INTO Data
from (
select * from query1
union all
select * from query2
union all
...
union all
select * from query8
) as queryData

或 SQL 将数据附加到现有 table 的语法:

INSERT INTO Data
select *
from (
select * from query1
union all
select * from query2
union all
...
union all
select * from query8
) as queryData

VBA 运行 代码中查询的语法:

dim db as dao.database: set db = Currentdb
dim strSQL as string

strSQL = "...." ' as above
db.execute strSQL