Python Beatbox:从SFDC提取数据时,如何添加WHERE子句?

Python Beatbox:从SFDC提取数据时,如何添加WHERE子句?,python,pandas,salesforce,beatbox,Python,Pandas,Salesforce,Beatbox,在Pandas中,我创建了一个数据框架,用于合并来自两个不同Beatbox查询的数据。首先,我提取所有Opportunity数据,然后提取所有帐户数据,然后合并 但是,我希望通过只提取oppty['AccountID']列中存在的帐户['ID']的数据来优化此过程,而不是在合并之前提取整个帐户数据。我该怎么做 当前状态: 因为我无法访问您的svc对象,所以这只是一个建议。但是试试看 query_result = svc.query("""SELECT ID, AccountID FROM Opp

在Pandas中,我创建了一个数据框架,用于合并来自两个不同Beatbox查询的数据。首先,我提取所有Opportunity数据,然后提取所有帐户数据,然后合并

但是,我希望通过只提取oppty['AccountID']列中存在的帐户['ID']的数据来优化此过程,而不是在合并之前提取整个帐户数据。我该怎么做

当前状态:


因为我无法访问您的svc对象,所以这只是一个建议。但是试试看

query_result = svc.query("""SELECT ID, AccountID FROM Opportunity
                            JOIN Account on Account.ID = Opportunity.AccountID""")
作为单个查询


这应该使用左内部联接来提取数据,该联接将忽略两个表中不匹配的行。它还可以在SQL中进行连接,通过让数据库服务器进行连接,减少数据库通信量,从而减少网络带宽,从而减少桌面客户端系统上的计算负载。

您可以使用SOQL半连接将帐户查询限制为仅限于那些有机会的帐户,例如

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

salesforce的查询语言是SOQL,而不是SQL,它不支持像这样的任意连接。好的,这是缺少的线索,谢谢。如果你回复这个评论,我会删除答案。否则,我对上下文的无知和我故意忽略标签的行为将成为所有人的教训。谢谢!这真是太棒了。向其中添加OR的语法是什么?如从Opportunity中选择AccountID或从User中选择AccountID。因此,如果帐户ID在任意一组数据中,它将为我拉取网站。
svc.query("SELECT ID,Website FROM Account where ID in (SELECT accountId FROM Opportunity)")