有没有人能帮我做以下事情:
我有一个查询导致两列直接来自表(columnA),而另一列是从子查询(columnB)生成的。如果我在 columnB 上进行排序(即 ORDER BY),我得到的响应要慢得多,然后在 columnA 上做同样的事情(50 次以上)。有没有办法加快对columnB的排序,以便接近对 columnA 进行排序时达到的速度?
注意:引擎是 Postgres
更新:查询类似于:
select columnA, array_to_string(array(select ... from tableB where ...), '%') as columnB
from tableA
where ...
order by columnA
非常感谢任何建议。
更新#2:通过在新查询中进行排序然后将结果提供给主查询来解决它(使用 where 语句仅选择部分行数而不是整个集合,这给了我所需的性能)。谢谢所有回复的人。