奇怪的Salesforce.com SOQL关系语法

时间:2011-07-07 11:52:33

标签: salesforce apex-code soql

我正在查看一个SOQL查询,该查询可能非常过时或使用其神奇 field__r.foreign_table 连接语法的某些方面,该代码包含对

的引用

USER_JOBS__R

当前没有类似当前对象的字段存在的情况,但是有一些名为 USER JOBS 的表,其中JOBS包含对USER的查找。

有没有人见过这个作为SOQL语法的一部分?

3 个答案:

答案 0 :(得分:2)

首先,请查看docs关系查询,它将拥有您需要的一切。

因为表格USER_JOBS__R是复数形式并以__R结尾,所以它可能会转移到子查询的父级。 USER_JOBS__R被称为“子关系名称”,并且在创建查找字段时创建。如果您找到定义子到父关系的查找,您可以通过查看字段定义来确认这一点(请注意,__R将不会出现,因为这只需要API)。一般情况下,如果您有一个查找,例如从申请人到工作,其名称为JOB__C,则子关系名称将为复数形式,__C替换为__R以便为您提供{ {1}}。这只是默认值,您可以为子关系名称选择所需的任何内容。了解这一点,您可以执行以下查询,以便为所有申请人提供每项工作:

JOB__R

对于您的场景,我假设有一些“Job”对象可以查找User对象,可能是[select id, (select id from APPLICANTS__R) from JOB__C] ,其子关系名称为USER__C

答案 1 :(得分:0)

您所指的那个通常称为关系字段(以“__r”结尾的字段)

答案 2 :(得分:0)

这是查询(父子)关系中字段的语法。