假设 [ReportID] 是整数,因此 [Employer] 的示例数据如下所示...
ReportID EmployerNumber EmployerName RecordID
-------- -------------- ------------ --------
1 012345 PENGUINS 01
2 012345 ACME INC 01
... 而这对于 [Employee] ...
ReportID EmployeeNumber EmployeeName RecordID
-------- -------------- ------------ --------
1 8686 CROSBY 02
1 7777 MALKIN 02
1 6666 LEMIEUX 02
2 1122 BUGS BUNNY 02
2 1133 DAFFY DUCK 02
2 9872 ROAD RUNNER 02
查询
SELECT
RecordID & EmployerNumber & EmployerName AS RowData,
CDbl(ReportID) AS RowSort
FROM Employer
UNION ALL
SELECT
RecordID & EmployeeNumber & EmployeeName AS RowData,
CDbl(ReportID) + Val(EmployeeNumber) / 10000 AS RowSort
FROM Employee
返回
RowData RowSort
----------------- -------
01012345PENGUINS 1
01012345ACME INC 2
028686CROSBY 1.8686
027777MALKIN 1.7777
026666LEMIEUX 1.6666
021122BUGS BUNNY 2.1122
021133DAFFY DUCK 2.1133
029872ROAD RUNNER 2.9872
所以查询
SELECT RowData
FROM
(
SELECT
RecordID & EmployerNumber & EmployerName AS RowData,
CDbl(ReportID) AS RowSort
FROM Employer
UNION ALL
SELECT
RecordID & EmployeeNumber & EmployeeName AS RowData,
CDbl(ReportID) + Val(EmployeeNumber) / 10000 AS RowSort
FROM Employee
)
ORDER BY RowSort
返回
RowData
-----------------
01012345PENGUINS
026666LEMIEUX
027777MALKIN
028686CROSBY
01012345ACME INC
021122BUGS BUNNY
021133DAFFY DUCK
029872ROAD RUNNER
只需将最后一个查询保存在 Access 中,然后将其导出为文本。