論理参照表の作成
ビジネス・モデルで論理参照表オブジェクトを作成して、翻訳参照表に必要なメタデータを定義します。
論理表の参照表としての指定で説明しているように、参照表とは、自身を参照表として指定するプロパティを持つ論理表のことです。 次の図は、参照表の例を示しています。
Product_Translation表
| Product_Code | Language_Key | 説明 |
|---|---|---|
| A123 | DE | Brot |
| A123 | IT | Pane |
| B234 | DE | Marmelade |
| B234 | IT | Marmelde di agrumi |
| C345 | DE | Milch |
| C345 | IT | Latte |
-
参照表の各主キーをまとめて参照キーと見なし、参照が実行されます。 参照は、すべての参照キー列に値が指定されている場合にのみ実行できます。 たとえば、前述の図では、Product_CodeとLanguage_Keyの組合せによってこの参照表の主キーが形成されます。
-
参照キーは論理表キーとは異なります。参照キー列ではその順序が考慮されます。 たとえば、Product_CodeとLanguage_Keyの参照キーは、Language_KeyとProduct_Codeの参照キーとは異なると見なされます。 参照キーのすべての列は参照関数で結合する必要があります。
-
参照表には、参照キーの組合せがあります。
-
参照表には少なくとも1つの値列が含まれます。 前述の図ではDescriptionが値列であり、製品の説明の翻訳済値が含まれています。
-
参照キーから各値列への関数従属性が存在する必要があります。 これは、値列を識別できる参照キーです。 参照キーおよび値列は、どちらも同じ物理表に属している必要があります。
-
参照表は独立しており、他の論理表には結合されません。
整合性チェック・ルールは参照表に対して緩和されるため、表が参照表として指定されている場合、その表をサブジェクト領域内の他の表と結合する必要はありません(論理表は、通常、サブジェクト領域内の少なくとも1つの表に結合されます)。
-
参照列を使用した集計の結果は、ベース列を使用した結果と一致する必要があります。 たとえば、次のコードを実行したとします
SELECT productname_trans.productname, sales.revenue FROM snowflakesales;これは、次のコードと同じ結果を戻す必要があります。
SELECT product.productname, sales.revenue FROM snowflakesales;この例の参照表productname_transで参照キーProductIDおよびLANGUAGEを使用している場合、両方の問合せで同じ集計結果が戻されます。
参照キーにproductnameとは異なる集計レベルの列が含まれる場合は、問合せで変更が取得され、集計に反映されます。