メイン コンテンツをスキップする 補完的コンテンツへスキップ

子から親の関係クエリーを生成するためのスキーマを設定する方法

このセクションでは、子から親の関係クエリーを生成するためのモジュール名とスキーマカラムを設定する方法を示します。

次の2つの子から親の関係クエリーの例は、次の手順のデモンストレーションを目的としています。

  • SELECT Name, Account.Name, Account.Owner.Name FROM Contact: 標準オブジェクトとフィールドを使った子から親の関係クエリー、および

  • SELECT Id, FirstName__c, MotherOfDaughter__r.FirstName__c FROM Daughter__c: カスタムオブジェクトとフィールドを使った子から親の関係クエリー。

    ここでは__r instead of __cで関係名を使う必要があります。詳細については、Understanding Relationship Names, Custom Objects, and Custom Fields (英語のみ)をご覧ください。

手順

  1. 上記の例のFROM句、ContactDaughter__cで指定されたオブジェクトの名前を使って、モジュール名を設定するために使われます。
  2. スキーマダイアログボックスのSELECTの後ろに、(コンマで区切られた)フィールドリスト内の各フィールドにカラムを作成します。

    最初の例では、3つのフィールドNameAccount.NameAccount.Owner.Nameに3つのカラムを作成する必要があります。

    2番目の例では、3つのフィールドIdFirstName__cMotherOfDaughter__r.FirstName__cに3つのカラムを作成する必要があります。

  3. 各カラムの名前を各フィールドの名前に設定し、カラム名のすべてのドットをアンダースコア文字に置き換えます。

    最初の例では、3つのカラムの名前がNameAccount_NameAccount_Owner_Nameに設定されています。

    2番目の例では、3つのカラムの名前がIdFirstName__cMotherOfDaughter__r_FirstName__cに設定されています。

  4. 各カラムのタイプを設定するために使われます。

    最初の例のスキーマは次のように設定する必要があります。

    2番目の例のスキーマは次のように設定する必要があります。

    Talendスキーマでは、アンダースコア文字'_'は関係名とフィールド名の間の区切りとして使われます。したがって、クエリーを生成する時に'__r'または'__c'の後ろに続くアンダースコア文字'_'のみがドット文字'.'に置き換えられます。Contact_custom_field__cのようにアンダースコア文字'_'がスキーマ内のカスタム名の一部である場合、クエリー内ではContact.custom_field__cとすべきなので、生成されたクエリー内の'_'を手動で'.'に置き換える必要があります。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。