创建 2d 索引
2 d 索引支持对平面欧几里得平面中的位置数据进行查询。
要创建 2d 索引,请使用 db.collection.createIndex()
方法。 索引类型为"2d"
:
db.<collection>.createIndex( { <location field> : "2d" } )
关于此任务
<location field>
中的值必须是legacy coordinate pairs。指定传统坐标对时,首先列出经度,然后列出纬度。
有效经度值介于
-180
和180
之间,两者均包括在内。有效纬度值介于
-90
和90
之间,两者均包括在内。
开始之前
创建 contacts
集合:
db.contacts.insertMany( [ { name: "Evander Otylia", phone: "202-555-0193", address: [ 55.5, 42.3 ] }, { name: "Georgine Lestaw", phone: "714-555-0107", address: [ -74, 44.74 ] } ] )
address
字段包含传统坐标对。
步骤
在address
字段上创建 2d 索引:
db.contacts.createIndex( { address : "2d" } )
后续步骤
创建 2d 索引后,您可以使用 2d 索引来支持对位置数据的计算。 要查看使用 2d 索引的查询示例,请参阅:
了解详情
要创建支持球面计算的索引,请参阅2dsphere 索引。