1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
t = db.geo6;
t.drop();
t.createIndex({loc: "2d"});
assert.eq(0, t.find().itcount(), "pre0");
assert.eq(0, t.find({loc: {$near: [50, 50]}}).itcount(), "pre1");
t.insert({_id: 1, loc: [1, 1]});
t.insert({_id: 2, loc: [1, 2]});
t.insert({_id: 3});
assert.eq(3, t.find().itcount(), "A1");
assert.eq(2, t.find().hint({loc: "2d"}).itcount(), "A2");
assert.eq(2, t.find({loc: {$near: [50, 50]}}).itcount(), "A3");
t.find({loc: {$near: [50, 50]}}).sort({_id: 1}).forEach(printjson);
assert.eq(1, t.find({loc: {$near: [50, 50]}}).sort({_id: 1}).next()._id, "B1");
assert.eq(2, t.find({loc: {$near: [50, 50]}}).sort({_id: -1}).next()._id, "B1");
t.insert({_id: 4, loc: []});
assert.eq(4, t.find().itcount(), "C1");
|