在postgresql中使用INDEX缩短查询执行时间

时间:2015-08-12 15:08:49

标签: sql postgresql

我有一张包含四百万条记录的表格。用主键 PP_Product_Cost_ID PP_Product_Cost 。在我的Java应用程序中,常见的选择WHERE子句是 Costelement_ID,Order_ID,Product_ID,acctSchema_ID

选择查询说,select * from PP_Order_Cost where Costelement_ID=1000003 AND Order_ID=1000006 AND Product_ID=1001851 AND acctSchema_ID=1000003正在执行 2500毫秒。 我需要减少执行时间。此表没有 INDEX

我可以使用正确的索引缩短执行时间吗?如果是,我该如何为此表正确添加INDEX? (WHERE子句列本身或组合不是唯一的)

1 个答案:

答案 0 :(得分:0)

CREATE INDEX ix ON PP_Order_Cost(Costelement_ID, Order_ID, Product_ID, acctSchema_ID)

这会将查询的执行时间缩短到标称时间。索引是否值得支持这一个查询是您的呼叫......