SELECT col1, max(date) as max_date
FROM table
WHERE col1 ILIKE 'name'
GROUP BY col1
这里 col1 是数据类型varchar
,日期是timestamp with time zone
数据类型。所以创建了扩展CREATE EXTENSION pg_trgm
然后尝试了以下索引并得到了错误:
1:问题:错误:操作员类“gin_trgm_ops”不接受带时区的数据类型时间戳
CREATE INDEX CONCURRENTLY trgm_table_col1_date_index
ON table
USING gin (provider_id, date gin_trgm_ops);
2:问题:错误:访问方法“gin”不存在操作员类“text_pattern_ops”
CREATE INDEX CONCURRENTLY trgm_table_col1_date_index
ON table
USING gin (provider_id, date text_pattern_ops);
如何为上述查询创建索引以加快执行速度?任何帮助将不胜感激!
编辑:所以这在语法上有效,但不会加快查询速度:
CREATE INDEX CONCURRENTLY trgm_provider_date_index
ON table
USING gin (provider_id gin_trgm_ops, date_var)