【发布时间】:2018-10-22 13:59:03
【问题描述】:
对于给定的 SOQL 查询,尝试优化 SOQL 查询。我有两个疑问
查询 1 从 salesforce 获取给定用户帐户的用户 ID
SELECT id From User WHERE Username = 'test@testmail.com'
查询 2 为给定的用户 ID 找到自定义对象
SELECT Id,Headline__c,Description__c
FROM Incident__c
WHERE Id IN (SELECT Incident__c FROM Node_Affected__c
WHERE (Incident__r.Account__c = '034524000000uzurX')
AND Incident__r.Indicator__c = false)
现在我想将其优化为一个查询,这样我就不必从外部系统进行两次 api 调用。所以我在尝试
SELECT Id,Headline__c,Description__c
FROM Incident__c
WHERE Id IN (SELECT Incident__c FROM Node_Affected__c
WHERE (Incident__r.Account__c = null OR Incident__r.Account__c IN (SELECT id From User WHERE Username = 'test@testmail.com'))
AND Incident__r.Indicator__c = false)
但我收到以下错误
MALFORMED_QUERY:
Incident__r.Account__c IN (SELECT id From User WHERE Username = 'test@testmail.com'))
^
ERROR at Row:5:Column:87
Nesting of semi join sub-selects is not supported
有没有更好的方法来解决这类问题?在此先感谢:)
【问题讨论】:
标签: select salesforce where soql