1. ホーム
  2. node.js

[解決済み] MongoDB/Mongooseは特定の日付にクエリを実行する?

2022-04-23 09:05:35

質問

特定の日付を指定して問い合わせることはできますか?

mongo のクックブックによると、範囲指定ができるようです。 日付範囲のクエリ このように.

db.posts.find({"created_on": {"$gte": start, "$lt": end}})

しかし、特定の日にちを指定することは可能なのでしょうか? これはうまくいきません。

db.posts.find({"created_on": new Date(2012, 7, 14) })

解決方法は?

DBに保存した日付が時間なし(年、月、日だけ)であれば、それでうまくいくはずです。

可能性としては、保存した日付が new Date() には、時間成分が含まれています。これらの時間を問い合わせるには、1日のすべての時間を含む日付範囲を作成する必要があります。

db.posts.find({ //query today up to tonight
    created_on: {
        $gte: new Date(2012, 7, 14), 
        $lt: new Date(2012, 7, 15)
    }
})