0

目前,我正在从 Account 对象中查询仅具有 Opportunities 的帐户的数据。但是,我想添加一个 OR 函数,以便它查询具有联系人的帐户的数据。

添加 OR 的语法是什么?如(从商机或联系人中选择 AccountID)。因此,如果 AccountID 在任一数据集中,它将为我拉取网站。

当前状态:

query_result = svc.query("SELECT ID,Website FROM Account where ID in (SELECT accountId FROM Opportunity)")
4

2 回答 2

0

这是SOQL 比较运算符的限制 - 半连接与 IN ...

  • 您不能将子查询与 OR 一起使用。

您可能会收到一条错误消息

MALFORMED_QUERY Semi join sub-selects are not allowed with the 'OR' operator

即使你结合WHERE Id IN (SELECT ...) OR ...任何微不足道的条件。SOQL 没有解决方案,但有两个复杂的解决方法:A) 创建两个汇总字段,其中包含机会计数和联系人计数,以便在没有半连接的情况下将它们组合或 B) 通过 Python 组合两个查询的结果.

于 2017-08-11T14:30:28.493 回答
0

您可以点击以下链接

https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_select_conditionexpression.htm

于 2015-07-03T08:27:48.913 回答