当前我有下面的SQL Select语句的下列元素。尽管如此,查询似乎仍然很慢(10.000条记录)。你有什么建议?PostgreSQL索引优化
- 指数CATEGORY_ID
- 指数DELIVERY_DATE
- 上的product_id指数,PRODUCT_NAME
这里是我的DDL:
Create table product (
product_id serial,
category_id int2,
product_name varchar(50),
delivery_date timestamp,
subtitle varchar(20),
price numeric(10,2),
retail_price numeric(10,2),
language_id int2,
store_id int2,
reseller_id int2
);
和SQL:
Select *
from product
WHERE delivery_date > '2012-10-20 06:00:00' AND category_id = 1
ORDER BY product_id, product_name;
任何帮助,将不胜感激。
下面的输出EXPLAIN分析一下:
Sort (cost=18.11..18.12 rows=1 width=119) (actual time=0.064..0.064 rows=0 loops=1)
Sort Key: product_id, product_name
Sort Method: quicksort Memory: 25kB
-> Seq Scan on product (cost=0.00..18.10 rows=1 width=119) (actual time=0.019..0.019 rows=0 loops=1)
Filter: ((delivery_date > '2012-10-20 06:00:00'::timestamp without time zone) AND (category_id = 1))
Total runtime: 0.098 ms
编辑你的问题,并粘贴'explain analyze <你的选择语句>'的输出。 –
请参阅http://stackoverflow.com/tags/postgresql-performance/info - 请显示Pg版本,'EXPLAIN(BUFFERS,ANALYZE)'输出等。 –