2016-04-22 184 views

回答

1

如果最終使用經緯度查詢數據庫中的記錄,您肯定會從添加索引中受益。索引不僅用於精確匹配查詢,還用於比較查詢,如select * from table_name where latitude between 30 and 40 and longitude > 50。 根據查詢和記錄數量,postgres查詢計劃員將選擇最佳方式來查找匹配記錄(順序掃描或索引掃描)。

+0

當僅基於一個字段進行搜索時,就可以了。正如我們在這裏我們索引兩個讓我困惑...不是不好? – Abhilash

+1

這並不壞。您也可以考慮在經度和緯度上使用單個多列索引,而不是使用兩個單獨的索引,但在這種情況下,您必須確保查詢使用與索引中相同的列順序。例如,如果您創建如下索引: 'CREATE INDEX test_multi_idx ON測試(經度,緯度);',您的查詢應該是'... WHERE latitude ...和longitude',否則索引將不會被使用 – makagonov

+0

感謝您的信息..任何已知的文章或教程有關此? – Abhilash

相關問題