我有一个SQL-Query看起来像这样:
SELECT *
FROM table
WHERE ARRAY['entry1', 'entry2'] && array_column
array_column 可以有数千个条目,而输入通常只有几个。 array_column的类型为character varying[]
我有一个最新版本的PostgreSQL(9.2)。什么是正确的索引?
答案 0 :(得分:1)
您应该使用GIN
索引。另请参阅本手册的这一部分:http://www.postgresql.org/docs/current/static/indexes-types.html
请注意,它仅在使用数组运算符时才有效(您使用的是&&
之一)。
您可以在此处找到有关Gin索引的更多信息:http://www.postgresql.org/docs/9.3/static/gin.html