我试图在POSTGRESQL中使我的查询速度更快。有一个包含列price和vat的item表。我想选择价格高于增值税的商品,比如说x。
SELECT * FROM item WHERE (price*(1+VAT/100.0))>x
EXPLAIN返回了一些成本--大约8000。
为了更快,我创建了一个函数price_vat(价格,增值税),它计算相同的东西(价格*(1+增值税/100.0))。当我用price_vat(price,vat)替换(price*(1+VAT/100.0))时,执行成本略有增加(大约9000)。
所以我创建了一个INDEX
CREATE INDEX price