相关疑难解决方法(0)

涉及OR-ed条件的高级索引(pgsql)

我开始对PostgreSQL索引有了更好的把握,但我遇到了OR条件的问题,我不知道如何优化我的索引以获得更快的查询.

我有6个条件,当单独运行时,似乎成本很低.以下是修剪查询的示例,包括查询计划计算时间.

(注:我没有输出低于降低复杂起见,这些查询的实际查询计划,但它们都使用nested loop left joins,并index scans作为我会正确的索引想到如果有必要,我可以包括一个更有意义的响应查询计划. .)

EXPLAIN ANALYZE SELECT t1.*, t2.*, t3.*
  FROM t1 LEFT JOIN t2 on t2.id = t1.t2_id LEFT JOIN t3 ON t3.id = t1.t3_id
 WHERE (conditions1)
 LIMIT 10;

QUERY PLAN
-------------------------------------------------------------------------------------
Limit  (cost=0.25..46.69 rows=1 width=171) (actual time=0.031..0.031 rows=0 loops=1)

EXPLAIN ANALYZE SELECT t1.*, t2.*, t3.*
  FROM t1 LEFT JOIN t2 on t2.id = t1.t2_id LEFT JOIN t3 ON t3.id = t1.t3_id
 WHERE (conditions2)
 LIMIT 10;

QUERY PLAN
------------------------------------------------------------------------------------- …
Run Code Online (Sandbox Code Playgroud)

postgresql indexing union

4
推荐指数
1
解决办法
1105
查看次数

标签 统计

indexing ×1

postgresql ×1

union ×1