使用新的SQL和PostDjango字段。我想对hstore字段中的值应用索引。然而,在阅读postgres的文档时,我觉得btree索引不是正确的方法,gin索引更合适,因为我的hstore字段中有许多值,都指向同一个记录。使用pgAdmin时,我注意到,如果我将db_index=True添加到hstore字段中,则会创建一个btree索引。 我的问题是:
原始SQL如下所示:
SELECT * from transaction WHERE ("transaction"."hstorefield" -> 'service_code') = somevalue
GIN很好,但它确实会大大降低插入和更新的速度。在
如果您只需要加快对一个hstore键的查询,btree是可能的,而且速度会稍快一些(在使用大于/小于运算符的查询上效果会更好)
^{pr2}$如果键包含数字数据,并且您想将(小于/大于)与where子句中的数字进行比较,请确保将索引编写为:
相关问题 更多 >
编程相关推荐