1. ホーム
  2. postgresql

[解決済み] CREATE TABLEの定義でインデックスを作成することはできますか?

2022-07-03 02:14:31

質問

テーブルの作成時に、いくつかのカラムにインデックスを追加したいと思います。CREATE TABLE の定義にそれらを追加する方法はありますか、それとも別のクエリで後から追加しなければなりませんか。

CREATE INDEX reply_user_id ON reply USING btree (user_id);

どのように解決するのですか?

でインデックスを指定する方法はないようです。 CREATE TABLE 構文でインデックスを指定する方法はないようです。しかし、PostgreSQLはデフォルトで一意性制約と主キーに対してインデックスを作成します。 この注意 :

<ブロッククオート

PostgreSQLは、一意性制約と主キー制約のそれぞれについて、一意性を強制するためのインデックスを自動的に作成します。

それ以外に、もし一意でないインデックスが必要な場合は、自分で別の CREATE INDEX クエリで作成する必要があります。