尝试使用Node.js驱动程序查询MongoDB
这是一个关于如何在没有猫鼬的情况下查询的备忘录。
准备MongoDB驱动程序。
安装MongoDB Node.js驱动程序
npm install mongodb
源代码
var MongoClient = require('mongodb').MongoClient,
assert = require('assert');
var config = require('./config.json');
MongoClient.connect(config.url, function(err, db) {
assert.equal(err, null);
console.log("Connected correctly to server");
var collection = db.collection(config.collection);
collection.find(config.query, config.options)
.toArray(function(err, docs) {
assert.equal(err, null);
console.dir(docs);
db.close();
});
});
设置文件
{
"dbtype": "mongodb",
"url": "mongodb://localhost:27017/word_counter",
"collection": "C5577d6e39e3a79041fe959d4",
"query": {
"$or": [
{ "pos": "名詞" },
{ "pos": "形容詞" }
],
"$and": [
{ "basicForm": { "$ne": "、" } },
{ "basicForm": { "$ne": "・" } },
{ "basicForm": { "$ne": "*" } }
]
},
"options": {
"limit": 50,
"sort": {
"freq": -1
}
}
}
执行结果
[ { _id: { _bsontype: 'ObjectID', id: 'U~[ó%W½\u00025<\u0004\u0014' },
wordId: 565510,
basicForm: '皆さん',
pos: '名詞',
posDetail1: '一般',
freq: 22 },
{ _id: { _bsontype: 'ObjectID', id: 'U~[ó%W½\u00025<\u00078' },
wordId: 2521080,
basicForm: '改革',
pos: '名詞',
posDetail1: 'サ変接続',
freq: 21 },
{ _id: { _bsontype: 'ObjectID', id: 'U~[ó%W½\u00025<\u0004X' },
wordId: 1492850,
basicForm: '日本',
pos: '名詞',
posDetail1: '固有名詞',
freq: 19 },
...
]