【发布时间】:2021-05-14 01:51:00
【问题描述】:
我正在尝试使用 PostgreSQL 9.2 将两个表连接在一起,其中一个是返回连接列的子查询,但这需要很长时间。
本质上,我的查询是:
select *
from (
select (s.a || ':' || s.b) source_key
from source s
) sourcedata
join audit a on a.source = sourcedata.source_key
我在 source.a、source.b 和 audit.source 上有索引。虽然需要很长时间。
我已尝试在源上添加索引:
create index source_key_idx on source((a || ':' || b));
这对性能有很小的影响。
是否可以在级联索引上显式执行此连接?还是已经这样做了?
我的下一个选择是添加一个新的列或函数,它会产生串联的值和索引,然后加入。
【问题讨论】:
标签: sql postgresql join postgresql-9.2