Sql-index

提供:Dev Guides
移動先:案内検索

SQL-INDEX制約

INDEXは、データベースからデータを非常に迅速に作成および取得するために使用されます。 インデックスは、テーブル内の列の単一またはグループを使用して作成できます。 インデックスが作成されると、データをソートする前に、各行にROWIDが割り当てられます。

適切なインデックスは、大規模なデータベースでのパフォーマンスには適していますが、インデックスの作成時には注意が必要です。 フィールドの選択は、SQLクエリで使用しているものによって異なります。

たとえば、次のSQL構文は、CUSTOMERSという新しいテーブルを作成し、5つの列を追加します。

CREATE TABLE CUSTOMERS(
   ID   INT              NOT NULL,
   NAME VARCHAR (20)     NOT NULL,
   AGE  INT              NOT NULL,
   ADDRESS  CHAR (25) ,
   SALARY   DECIMAL (18, 2),
   PRIMARY KEY (ID)
);

以下の構文を使用して、単一または複数の列にインデックスを作成できるようになりました。

CREATE INDEX index_name
   ON table_name ( column1, column2.....);

特定の年齢の顧客の検索を最適化するために、AGE列にINDEXを作成するには、以下に示す次のSQL構文を使用できます-

CREATE INDEX idx_age
   ON CUSTOMERS ( AGE );

インデックス制約の削除

INDEX制約を削除するには、次のSQL構文を使用します。

ALTER TABLE CUSTOMERS
   DROP INDEX idx_age;