-
単一カラムのカーディナリティ: カーディナリティの最も基本的な形態は、単一のカラムにおけるユニークな値の数を表します。例えば、以下のようなテーブルがあるとします。
CREATE TABLE Customers ( CustomerID INT, FirstName VARCHAR(50), LastName VARCHAR(50), Email VARCHAR(100) );
この場合、CustomerID列のカーディナリティは、顧客の数と同じになります。以下のクエリを使用してカーディナリティを取得できます。
SELECT COUNT(DISTINCT CustomerID) FROM Customers;
-
複数カラムのカーディナリティ: 一つのカラムだけでなく、複数のカラムの組み合わせにおけるカーディナリティも重要な要素です。例えば、以下のようなテーブルがあるとします。
CREATE TABLE Orders ( OrderID INT, CustomerID INT, OrderDate DATE, ProductID INT );
この場合、CustomerIDとOrderDateの組み合わせにおけるカーディナリティは、異なる顧客と異なる注文日の数を表します。以下のクエリを使用してカーディナリティを取得できます。
SELECT COUNT(DISTINCT CustomerID, OrderDate) FROM Orders;
-
テーブル全体のカーディナリティ: テーブル全体のカーディナリティは、テーブル内のすべてのカラムの組み合わせにおけるユニークな値の数を表します。以下のクエリを使用してテーブル全体のカーディナリティを取得できます。
SELECT COUNT(DISTINCT *) FROM TableName;
このように、カーディナリティの概念はデータベースのパフォーマンスやクエリの最適化において重要な役割を果たします。正確なカーディナリティの把握は、データベース設計やクエリチューニングにおいて役立つ情報を提供します。