您需要使用子选择来应用条件:
SELECT *
FROM dbo_A LEFT JOIN
[SELECT dbo_B.* FROM dbo_B WHERE dbo_B.F_ID = 3]. AS dbo_B
ON dbo_A.ID = dbo_B.A_ID;
如果您在启用“ sql 92”兼容模式的情况下运行Access,则可以执行更多标准操作:
SELECT *
FROM dbo_A LEFT JOIN
(SELECT dbo_B.* FROM dbo_B WHERE dbo_B.F_ID = 3) AS dbo_B
ON dbo_A.ID = dbo_B.A_ID;
您是否需要在Access中对其进行编辑?如果没有,只需对本机T- sql使用传递查询。如果是这样,我可能会为此创建一个服务器端视图,如果文字值是您要参数化的值(例如F_ID = 3实际上是F_ID = N,其中N是在运行时选择的值)。
顺便说一句,我在Access中工作的每一天都写这些子选择派生表sql语句。没什么大不了的。