バージョンごとのドキュメント一覧

11.11. インデックスと照合順序 #

<title>Indexes and Collations</title>

An index can support only one collation per index column. If multiple collations are of interest, multiple indexes may be needed. インデックスはインデックス列当たり1つの照合順序のみをサポートすることができます。 複数の照合順序を考慮しなければならない場合、複数のインデックスが必要になるかもしれません。

Consider these statements: 以下の文を考えてみます。

CREATE TABLE test1c (
    id integer,
    content varchar COLLATE "x"
);

CREATE INDEX test1c_content_index ON test1c (content);

The index automatically uses the collation of the underlying column. So a query of the form このインデックスは自動的に背後にある列の照合順序を使用することになり、

SELECT * FROM test1c WHERE content > constant;

could use the index, because the comparison will by default use the collation of the column. However, this index cannot accelerate queries that involve some other collation. So if queries of the form, say, という形式の問い合わせでは、この比較はデフォルトで列の照合順序を使用しますので、このインデックスを使用することになります。 しかし、このインデックスは何らかの他の照合順序を含む問い合わせを高速化することはできません。 このため

SELECT * FROM test1c WHERE content > constant COLLATE "y";

are also of interest, an additional index could be created that supports the <literal>"y"</literal> collation, like this: という形式の問い合わせも考慮しなければならない場合は、以下のように"y"照合順序をサポートする追加のインデックスを作成することになります。

CREATE INDEX test1c_content_y_index ON test1c (content COLLATE "y");