我在使用联合查询时遇到了这个问题。当我尝试使用超过 2 条 UNION 语句时,我发现了这个错误——“微软访问数据库引擎找不到对象”。确保对象名称存在并且您正确拼写其路径名称。” SQL 代码为:
SELECT [Pt data 1].IDno, [Pt data 1].pt_name, [Expected visit date modified].[Visit day], [Expected visit date modified].[Visit Time], [Pt data 1].[visit_14d_st] AS Status
FROM [Expected visit date modified] INNER JOIN [Pt data 1] ON [Expected visit date modified].IDno = [Pt data 1].IDno
WHERE ((([Expected visit date modified].[Visit Time])="Day 14") AND (Not ([Pt data 1].[visit_14d_st])="Data Entered" And Not ([Pt data 1].[visit_14d_st])="Missed Visit"));
UNION
SELECT [Pt data 1].IDno, [Pt data 1].pt_name, [Expected visit date modified].[Visit day], [Expected visit date modified].[Visit Time], [Pt data 1].[visit_28d_st] AS Status
FROM [Expected visit date modified] INNER JOIN [Pt data 1] ON [Expected visit date modified].IDno = [Pt data 1].IDno
WHERE ((([Expected visit date modified].[Visit Time])="Day 28") AND (Not ([Pt data 1].[visit_28d_st])="Data Entered" And Not ([Pt data 1].[visit_28d_st])="Missed Visit"));
UNION
SELECT [Pt data 1].IDno, [Pt data 1].pt_name, [Expected visit date modified].[Visit day], [Expected visit date modified].[Visit Time], [Pt data 1].[visit_42d_st] AS Status
FROM [Expected visit date modified] INNER JOIN [Pt data 1] ON [Expected visit date modified].IDno = [Pt data 1].IDno
WHERE ((([Expected visit date modified].[Visit Time])="Day 42") AND (Not ([Pt data 1].[visit_42d_st])="Data Entered" And Not ([Pt data 1].[visit_42d_st])="Missed Visit"));
问题是该查询适用于两个查询中的任何一个,但不适用于所有三个。我完全坚持这一点。请提供任何帮助。谢谢。