0

我已经创建了这样的索引(documentData列的类型jsonb):

CREATE INDEX trgm_idx 
ON "Documents" 
USING gin (cast(("documentData"#>'{text1}') AS text) gin_trgm_ops);

现在,当我执行以下查询时:

EXPLAIN ANALYZE 
SELECT "documentData"#>'{text1}' 
FROM "Documents" 
WHERE cast("documentData"#>'{text1}' as text) % 'abc'

我得到以下输出

Seq Scan on "Documents"  (cost=0.00..1.08 rows=1 width=32) (actual time=2.116..2.116 rows=0 loops=1)
  Filter: ((("documentData" #> '{text1}'::text[]))::text % 'abc'::text)
  Rows Removed by Filter: 20
Planning time: 9.645 ms
Execution time: 4.877 ms

为什么查询不使用三元索引?

4

0 回答 0