> ## Documentation Index
> Fetch the complete documentation index at: https://help.teable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# リンク

> テーブル間に関係を作成し、現在のレコードから別のテーブルのレコードを選択します。

リンクフィールドは2つのテーブルを接続します。リンクフィールドを使用すると、現在のテーブルで別のテーブルのレコードを選択し、必要に応じてリンク先のレコードを開くことができます。**ルックアップ**および**ロールアップ**フィールドを使用する場合も、あらかじめリンクフィールドが必要です。

## ユースケース

| シナリオ       | 適した用途                                 |
| ---------- | ------------------------------------- |
| 顧客と注文      | 注文テーブルで顧客をリンクし、顧客テーブルから関連する注文を確認する    |
| プロジェクトとタスク | タスクをプロジェクトへリンクし、プロジェクト配下のすべてのタスクを確認する |
| 学生とコース     | 履修登録、プロジェクトメンバーなどの多対多の関係を追跡する         |
| 明細と親レコード   | 注文明細を注文へリンクし、価格の参照や合計の集計を行う           |

## 作成と設定

<Steps>
  <Step title="フィールド型を選択する">
    現在のテーブルでフィールドの追加をクリックし、**リンク**を選択します。
  </Step>

  <Step title="リンク先テーブルを選択する">
    設定ダイアログで、注文テーブルから顧客テーブルへリンクする場合など、リンク先のテーブルを選択します。
  </Step>

  <Step title="リンクモードを選択する">
    必要に応じて、一方向リンクまたは双方向リンクを選択します。
  </Step>

  <Step title="関係のルールを設定する">
    **複数選択を許可**と**重複値を許可**を使用して、1対1、1対多、多対1、多対多の関係を設定します。
  </Step>
</Steps>

## 一方向リンクと双方向リンク

| モード    | 説明                                                                     | 適した用途                                   |
| ------ | ---------------------------------------------------------------------- | --------------------------------------- |
| 双方向リンク | デフォルトで有効です。リンクフィールドを作成すると、Teableはリンク先テーブルに対応するリンクフィールドを作成し、両側を同期します    | 注文と顧客、プロジェクトとタスクなど、両方のテーブルから確認する必要がある関係 |
| 一方向リンク | 双方向オプションをオフにすると、リンクされたレコードは現在のテーブルだけに表示されます。リンク先テーブルに逆向きのフィールドは作成されません | 別のテーブルを参照するだけで、リンク先テーブルの構造を変更したくない場合    |

## 関係の種類

**複数選択を許可**と**重複値を許可**を組み合わせて、一般的な4種類の関係を定義します。

| 関係           | ビジネスでの例                                                            | 設定                                           |
| :----------- | :----------------------------------------------------------------- | :------------------------------------------- |
| **1対1（1:1）** | **従業員 - プロフィール**<br />1人の従業員には1つのプロフィールがあり、1つのプロフィールは1人の従業員に属します   | ☐ 複数選択を許可<br />☐ 重複値を許可<br />*（両方のオプションをオフ）* |
| **1対多（1:N）** | **部署 - 従業員**<br />1つの部署には複数の従業員がいますが、各従業員は1つの部署に属します               | ☑ 複数選択を許可<br />☐ 重複値を許可<br />*（複数選択だけを許可）*   |
| **多対1（N:1）** | **タスク - プロジェクト**<br />複数のタスクが1つのプロジェクトに属しますが、各タスクは1つのプロジェクトだけに属します | ☐ 複数選択を許可<br />☑ 重複値を許可<br />*（重複値だけを許可）*    |
| **多対多（N:N）** | **学生 - コース**<br />1人の学生が複数のコースを履修でき、1つのコースを複数の学生が履修できます            | ☑ 複数選択を許可<br />☑ 重複値を許可<br />*（両方のオプションをオン）* |

## 一般的な使用例

* **CRMの顧客管理**：`企業`テーブルで`連絡先`テーブルへのリンクフィールドを作成し、1社から複数の連絡先へリンクできるようにします。
* **プロジェクトのタスク割り当て**：`タスク`テーブルで`プロジェクト`テーブルへのリンクフィールドを作成し、各タスクを1つのプロジェクトに所属させるとともに、プロジェクトテーブルから関連タスクを確認できるようにします。
* **注文明細**：`注文`テーブルから`製品`テーブルへリンクし、ルックアップフィールドで価格を表示して、ロールアップフィールドで注文合計を計算します。

## 注意事項

* **1対多の制限**：厳密な1対多の関係では、テーブルB側で複数選択がオフの場合、あるテーブルAのレコードにリンクされたテーブルBのレコードを、別のテーブルAのレコードから選択することはできません。これはID番号や従業員プロフィールなど、再利用すべきでないデータに適しています。

<Info>リンクフィールドで接続できるのは、同じスペース内のテーブルだけです。ルックアップ、ロールアップ、条件付きルックアップ、条件付きロールアップの各フィールドでも、ソースデータが同じスペースにある必要があります。</Info>
