カー・レースの例の概要
カー・レース・データセットは、Oracle AI Databaseのデモおよびチュートリアルで一般的に使用される、適切に構造化されたリレーショナル・スキーマです。これは、F1のような競争の激しいカー・レースの世界をモデル化する現実的で関係性のあるコンテキストを提供します。
このデータセットは、関係の整合性とコアSQL操作に重点を置いて、エンティティ、関係、正規化などの基本的なデータベースの概念を示すように設計されています。
主要なエンティティと関係
表1-2 カー・レースの例の主要なエンティティと関係
| 表 | 説明 | キー列 | 関係 |
|---|---|---|---|
| team | レース・チーム情報 | team_id (PK)、name (一意)、points | ドライバに対して1:N |
| driver | レース・カー・ドライバ | driver_id (PK)、name、points、team_id (FK) | チームに対してN:1、マップを介してレースに対してN:N |
| race | レース・イベント | race_id (PK)、name、laps、race_date、podium | マップを介してドライバに対してN:N |
| driver_race_map | レースへのドライバの参加と結果 | driver_race_map_id (一意)、race_id (FK)、driver_id (FK)、position | ドライバに対してN:1、レースに対してN:1 |
表の説明
-
team: 各レース・チームの情報が含まれています。各チームは、
team_idによって一意に識別され、一意のnameを持ちます。 -
driver: 各ドライバを表します。個人の詳細および関連付けられたチームへの外部キー参照(
team_id)が含まれています。 -
race: 各レースを表します。レース名、ラップ数および開催日の列があります。各レースには一意の
race_idがあります。 -
driver_race_map: ドライバをレースに接続する中間(またはマッピング)表。これは、特定のレースへの各ドライバの参加と、彼らの順位(最終順位)を記録します。
データ・モデルの概要
スキーマには、いくつかの重要な関係が組み込まれています:
-
1対多(1:N): 各チームは複数のドライバを持つことができます。
team表に対するdriver表の外部キーを介して適用されます。 -
多対多(M:N): ドライバは複数のレースに参加でき、各レースには複数のドライバが参加できます。
driverおよびraceをリンクするdriver_race_map表によって取得されます。