Skip to main content

 

Data

 

OutSystems

サポートされている結合の種類

データは通常、単独のエンティティには保存されません。そのため、データ上でクエリの操作をする際には、複数のエンティティに保存されているレコードを結合する必要があります。これは複数のエンティティからのレコードの結合としても知られています。

これを行うには、エンティティをAggregateにドラッグします。これらは自動的に結合されますが、結合方法は[Sources]タブでいつでもカスタマイズできます。2つのエンティティからレコードを結合する方法は4種類あります。

  • 両方のエンティティに一致するレコードのみを取得する。
  • 2番目のエンティティに一致するものがなくても、最初のエンティティのすべての行を取得する。
  • 両方のエンティティの行を取得する。
  • 最初のエンティティの各レコードと2番目のエンティティのレコードを一致させる。

以下の例では、2つのエンティティを結合します。

一致するレコードのみを取得する

Engineerが割り当てられているIssuesのみを取得するには、Only Withを使用します。

Engineerがまだ割り当てられていないIssuesは返されません。ご注意ください。

一致するものがなくても、エンティティのすべてのレコードを取得する

Engineerが割り当てられているかどうかにかかわらず、すべてのIssuesを取得するには、WithまたはWithoutを使用します。

この種類の結合では、結合条件のエンティティの順序が返される行に影響を及ぼします。最初のエンティティのすべてのレコードを取得してから、2番目のエンティティの行を結合します。そのため、エンティティの順序を入れ替えると、結果が異なります。

Engineerが割り当てられていないIssuesの場合、Engineerに関する情報の列はデフォルト値になります。ご注意ください。

両方のエンティティの行を取得する

一致するものがなくてもすべてのIssuesとEngineersを取得するには、Withを使用します。

Engineerが割り当てられていないIssuesの場合、Engineerに関する情報の列はデフォルト値になります。ご注意ください。

割り当てられたIssuesのないEngineerは、Issuesに関する情報はデフォルト値になります。

このオプションはサードパーティシステムにデータをエクスポートする場合に特に有効です。

リレーションを無視してすべてのレコードを結合する

(たとえば、各チームと対戦チームをペアにしたリストを作成するために)エンティティの各レコードを2番目のエンティティのすべてのレコードと結合するには、[Sources]タブで結合が定義されていないことを確認します。

各チームと対戦チームをペアにするには、AggregateにTeamエンティティを2回追加します。

次に、チームが自らとペアになっていないようにAggregateをフィルタリングします。

  • Was this article helpful?