インターネットで検索してきましたが、理解できる答えが見つからなかったようです。
親切に、誰かが例の助けを借りて私に説明することができれば、データベースのカーディナリティとは何ですか?
ありがとうございました。
回答:
混乱の原因は、データモデリングとデータベースクエリの最適化という2つの異なるコンテキストでの単語の使用である可能性があります。
データモデリングの用語では、カーディナリティは、あるテーブルが別のテーブルとどのように関連しているかを示します。
上記にはオプションの参加条件もあります(一方のテーブルの行がもう一方のテーブルにまったく関連している必要はありません)。
カーディナリティ(データモデリング)に関するウィキペディアを参照してください。
データベースクエリの最適化について話すとき、カーディナリティはテーブルの列のデータ、具体的にはその中にある一意の値の数を指します。この統計は、クエリの計画と実行プランの最適化に役立ちます。
カーディナリティに関するウィキペディア(SQLステートメント)を参照してください。
それは文脈に少し依存します。カーディナリティとは何かの数を意味しますが、さまざまな状況で使用されます。
PERSON
たとえば、テーブルがある場合、GENDER
カーディナリティの列が非常に低い可能性があり(おそらく、値は2つしかないGENDER
)、PERSON_ID
カーディナリティの列は非常に高い可能性があります(すべての行の値が異なります)。おそらく、人々が異なるコンテキストを使用してカーディナリティについて話し、別の意味を持つ他の状況があります。
データベース内の、カーディナリティのテーブル内の行の数。
画像ソース
セットのカーディナリティは、セット内の要素の数です。セットa> a、b、c <があるため、このセットには3つの要素が含まれます。3はそのセットのカーディナリティです。
定義:データベースにテーブルがあります。リレーショナルデータベースでは、テーブル間に関係があります。これらの関係は、1対1、1対多、または多対多の場合があります。これらの関係は「カーディナリティ」と呼ばれます。
カーディナリティの重要性:
多くのリレーショナルデータベースは、スティックビジネスルールに従って設計されています。データベースを設計するときは、ビジネスルールに基づいてカーディナリティを定義します。しかし、すべてのオブジェクトには独自の性質もあります。
オブジェクト間でカーディナリティを定義するときは、正しいカーディナリティを定義するためにこれらすべてのことを考慮する必要があります。