建议更好的查询执行计划

时间:2014-06-04 06:23:38

标签: sql postgresql

我的编码很新,所以我的问题可能是noob

我正在尝试将一个非常大的选择查询执行到temp_table

CREATE TEMP TABLE tmp_tblp 
AS (my select query which is very long, consists of many inner joins)
  • 这个查询运行了很长时间(超过6分钟,因为我只选择了少量的where条件标准,并且在实际情况下10天采用日期,这将是一个月)并返回{ {1}}
  • 我只想知道在服务器端执行这些查询是否有任何准备工作

我的数据库是PostgreSQL 9.2

here是我的查询

4443 rows

1 个答案:

答案 0 :(得分:1)

试试这个

SET temp_buffers = '1GB'; 
SET work_mem = '1GB';
set shared_buffers='1GB';
set effective_cache_size='1GB';

在执行query之前,上述值适用于3GB RAM

  • shared_buffers应为可用内存的10%到25%
  • effective_cache_size应为可用内存的75%