2011-09-04 21 views
1

アカウントテーブルのSOQLクエリを使用して、カスタムテーブルWebsiteUserからユーザホームページを取得します。私は約10の異なるクエリを試みたが、私はそれが働いていないよ...Salesforce SOQL関係クエリの質問

fe。私はすべての__cと__rの組み合わせでSELECT field1, (SELECT userhomepage FROM User) FROM Accountを試しました。

私は次のような構造を持っている:

<complexType name="Account"> 
<complexContent> 
    <extension base="ens:sObject"> 
    <sequence> 
    ... 
    <element name="WebsiteUser__c" nillable="true" minOccurs="0" type="tns:ID"/> 
    <element name="WebsiteUser__r" nillable="true" minOccurs="0" type="ens:WebsiteUser"/> 

そしてWebsiteUserテーブルはuserhomepageと呼ばれる文字列フィールドを持っています。 これをどのようにクエリに入れますか?私は完全に立ち往生している、thnxは事前に!

答えて

0

しかし私は、それが「doesnの、WebsiteUser__cは、私はあなたが投稿したスニペットが表示されている信じるものであるアカウントへの参照を持っていることを前提としています標準的なオブジェクトのXMLのように見えるので、どこから来ているのかは100%ではありません。

WebsiteUser__cからアカウントへの検索では、多くのウェブサイトユーザーと1人のアカウントの関係が作成されます。

select Id, Name, (select Id, UserHomePage__c from WebsiteUser__r) 
from Account 

これは、すべてのWebsiteUser__cのリストをAccountを返します。周りにサブクエリを必要とする他の方法を照会

select Id, UserHomePage__c, Account__r.Name 
from WebsiteUser__c where some conditional 

:あなたがウェブサイトのUserテーブルから選択された場合はあなたのような何かをしたいですそれに関連付けられているレコードを、あなたがそうのような結果を介して実行できます。

for(Account sAcct : select Id, Name, 
          (select Id, UserHomePage__c from WebsiteUser__r) 
        from Account limit 200) 
{ 
    for(WebsiteUser__c sUser : sAcct.WebsiteUser__r) 
    { 
     System.Debug(sUser.UserHomePage__c); 
     // etc. 

に注意すべき点はということですは複数、つまりWebsiteUsers__rである可能性があります。すべての組み合わせを試しても機能していない場合は、__cまたは__rを自分でAPIオブジェクト名に入れていないことを確認してください。フィールドは__c__cまたは__r__rで終了します。

あなたがどのような情報を基礎にしなければならないと言うなら、私はこの答えを少し具体的にすることができます!

0
SELECT id, (SELECT UserHomePage__c FROM WebsiteUser__r) FROM ACCOUNT 

if websiteUser__r is the child relation 

SELECT id, WebsiteUser__r.UserHomePage__c FROM ACCOUNT 

if websiteUser__r is the parent relation 

それは

に役立ちますので、私は後でクエリが働くだろうと思う私には、親の関係...

希望のように思えます