受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发版本: devel

11.11. 索引和排序规则 #

每个索引列只能支持一种排序规则。如果你需要关心多种排序规则,就可能需要多个索引。

考虑以下语句:

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

CREATE INDEX test1c_content_index ON test1c (content);

该索引会自动使用底层列的排序规则。因此,下面这种形式的查询:

SELECT * FROM test1c WHERE content > constant;

可以使用该索引,因为比较默认会使用该列的排序规则。不过,这个索引不能加速涉及其他排序规则的查询。因此,如果你也关心如下形式的查询:

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

那么可以额外创建一个支持"y"排序规则的索引,例如:

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

提交更正

如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。