有没有办法在 Progress 中使用动态查询有条件地应用内部联接?

问题描述

我正在尝试将一个表与另一个表进行内部连接,但只有在右表上有条件而不是右表上的主索引字段链接到左表上的字段时才应用连接。例如,假设我有一个 Customer 表和一个 Contact 表,并且查询的结构如下:

FOR EACH Customer NO-LOCK [optional conditions],FirsT Contact NO-LOCK WHERE Contact.ContactID EQ Customer.ServiceContactID [optional conditions]

如果某个特定客户的 ServiceContactID 在 Contact 表中没有相应的记录,则该客户将从结果集中排除。如果查询的 Contact 部分没有可选条件,我不希望该客户从结果集中排除。

在我正在使用的代码库部分中,我无法根据用于可选条件的值有条件地添加查询的 Contact 部分的连接。除了使用传递给框架的值自动构建的条件部分之外,查询必须保持不变。有没有办法在 Progress 中做到这一点?

解决方法

如果您所能做的只是将值替换到预先存在的查询结构中,那么,不,您不能执行您所描述的操作。