首页 > 解决方案 > 现在所有 PostgreSQL 索引都可以索引任何元素吗?

问题描述

从链接 https://www.postgresql.org/docs/12/sql-createopclass.html

我读 :

storage_type

实际存储在索引中的数据类型。通常这与列数据类型相同,但一些索引方法(目前是 GiST、GIN 和 BRIN)允许它不同。STORAGE除非索引方法允许使用不同的类型,否则必须省略该子句。如果列data_type指定为anyarray,则storage_type可以声明为anyelement指示索引条目是元素类型的成员,该元素类型属于为每个特定索引创建的实际数组类型。

我知道 GIN 可以索引它,但是,我很好奇是否所有索引(如 btree、gist、brin 等)都可以索引 anyarray 的任何元素?

标签: postgresqlindexing

解决方案


您可以用于索引数组的唯一索引访问方法是 GIN,因此除非您为自己的运算符类创建索引支持,否则对任何其他索引访问方法都没有任何意义。


推荐阅读