有没有办法强制 PostgreSQL 使用我在物化视图表上创建的索引?我尝试了移动列属性的所有可能组合,以使 Postgres 使用我的索引......
我有这张表:
=> explain select * from flight3mv1;
QUERY PLAN
-------------------------------------------------------------
Seq Scan on flight3mv1 (cost=0.00..3.50 rows=150 width=26)
(1 row)
Run Code Online (Sandbox Code Playgroud)
当我在物化视图上创建索引时,我的查询计划没有任何变化。
=> create index flight3mv1index on flight3mv1(c_nation,s_nation);
=> analyze flight3mv1;
=> explain select * from flight3mv1 where c_nation='CHINA' and s_nation='CHINA';
QUERY PLAN
---------------------------------------------------------------------------------------
Seq Scan on flight3mv1 (cost=0.00..4.25 rows=6 width=26)
Filter: (((c_nation)::text = 'CHINA'::text) AND ((s_nation)::text = 'CHINA'::text))
(2 rows)
Run Code Online (Sandbox Code Playgroud)
这是我的 Flight3mv1 表:
=> \d flight3mv1
Materialized view "public.flight3mv1"
Column | Type | Modifiers
----------+-----------------------+-----------
c_nation …
Run Code Online (Sandbox Code Playgroud)