0

タイムスタンプを照会したい場合は、次のようにします。

> db.foo.find()
{ "_id" : ObjectId("4e43a21d84782019413162ed"), "a" : { "t" : 1313055261000, "i" : 1 } }
> db.foo.find({'a': {'$gte': new Timestamp(new Date(2011, 8-1, 11), 0) } })
{ "_id" : ObjectId("4e43a21d84782019413162ed"), "a" : { "t" : 1313055261000, "i" : 1 } }
> db.foo.find({'a': {'$gte': new Timestamp(new Date(2011, 8-1, 12), 0) } })

私はmongodbのページでその例を見つけます...しかし、例に従ってmongoskinを使用してmongodbにタイムスタンプを挿入したい場合は???

私はこれを試します:

db.collection('times').insert({time: new Timestamp(new Date('2012-08-06'),0)})

これはエラーです:

ReferenceError: Timestamp is not defined
4

1 に答える 1

1

Timestamp定義されていないからです。JavaScript の一部でも Node.js の一部でもありません。使用する前に定義する必要があります。これはうまくいくはずです:

var mongoskin = require('mongoskin');
var Timestamp = mongoskin.BSONPure.Timestamp;

これTimestamp内部データベース専用であることに注意してください。Date.now()とがあるのに、なぜそれらが必要なのnew Date().getTime()ですか?

とにかく、ここにいくつかの詳細が記載されたリンクがあります — http://mongodb.github.com/node-mongodb-native/api-bson-generated/timestamp.html

于 2012-09-02T08:07:55.883 に答える