MongoDB CRUD操作:地理位置应用——通过地理空间查询查找餐厅
// 引入MongoDB客户端
const MongoClient = require('mongodb').MongoClient;
// 定义连接字符串和数据库名
const url = 'mongodb://localhost:27017';
const dbName = 'mydatabase';
// 创建新的MongoClient实例
const client = new MongoClient(url, { useUnifiedTopology: true });
// 连接到服务器
client.connect(function(err) {
if(err){
console.log('数据库连接失败', err);
return;
}
console.log('连接成功');
// 选择数据库
const db = client.db(dbName);
// 选择集合
const collection = db.collection('restaurants');
// 创建地理空间查询
const query = {
location: {
$geoWithin: { $centerSphere: [ [ -73.9458, 40.7731 ], 0.00002 ] } // 纽约大学位置
}
};
// 执行查询
collection.find(query).toArray(function(err, restaurants) {
if(err){
console.log('查询失败', err);
client.close();
return;
}
console.log('查询成功');
console.log(restaurants);
// 关闭连接
client.close();
});
});
这段代码首先连接到MongoDB数据库,然后选择数据库和集合,定义一个查询条件来寻找纽约大学附近的餐厅,并执行查询。查询结果会以数组的形式输出,之后关闭数据库连接。这个例子展示了如何使用MongoDB的地理空间查询功能来进行数据搜索。
评论已关闭