-
日付を計算する: 現在の日付から2日を引いて、2日前の日付を計算します。この日付をプログラム内で使用します。
-
クエリを作成する: MongoDBのクエリ言語を使用して、2日前のレコードを検索するクエリを作成します。以下は、MongoDBシェルでの例です。
var twoDaysAgo = new Date();
twoDaysAgo.setDate(twoDaysAgo.getDate() - 2);
db.collection.find({ date: { $gte: twoDaysAgo } });
上記の例では、collection
は対象のコレクション名、date
はレコード内の日付フィールド名を指定します。$gte
演算子を使用することで、指定した日付以降のレコードを検索します。
- コード例: 上記のクエリを使用する簡単なNode.jsのコード例を以下に示します。
const MongoClient = require('mongodb').MongoClient;
async function getTwoDaysOldRecords() {
const uri = 'mongodb://localhost:27017';
const client = new MongoClient(uri);
try {
await client.connect();
const database = client.db('mydatabase');
const collection = database.collection('mycollection');
const twoDaysAgo = new Date();
twoDaysAgo.setDate(twoDaysAgo.getDate() - 2);
const query = { date: { $gte: twoDaysAgo } };
const result = await collection.find(query).toArray();
console.log(result);
} catch (error) {
console.error('Error:', error);
} finally {
await client.close();
}
}
getTwoDaysOldRecords();
上記の例では、MongoDBドライバのMongoClient
を使用してデータベースに接続し、指定した日付範囲のレコードを検索しています。mydatabase
とmycollection
はそれぞれデータベース名とコレクション名に置き換えてください。
このようにして、MongoDBを使用して2日前のレコードを取得することができます。ご参考までに、上記のコード例はNode.jsを使用していますが、他のプログラミング言語でも同様の手順で実現することができます。