sql >> データベース >  >> NoSQL >> MongoDB

集計フレームワークで完全なタイムスタンプが指定されている場合、日付で集計するにはどうすればよいですか?

    これを行うには、次の集計演算子を使用します。

    • $ group
    • $ year
    • $ month
    • $ dayOfMonth

    これにより、各日付のエラー数がわかります:

    db.errors.aggregate(
        { $group : {
            _id: {
                year : { $year : "$date" },        
                month : { $month : "$date" },        
                day : { $dayOfMonth : "$date" },
            },
            count: { $sum: 1 }
        }}
    );
    

    この例では、エラードキュメントの日付フィールドがdateであると想定しています。 タイプはBSON日付です。 MongoDBにはタイムスタンプタイプもありますが、このタイプの使用はドキュメントによって明示的に推奨されていません:

    注:BSONタイムスタンプタイプは、MongoDBの内部で使用するためのものです。ほとんどの場合、アプリケーション開発では、BSON日付タイプを使用する必要があります。詳細については、日付を参照してください。



    1. mgoGoサーバーで開いているファイルが多すぎます

    2. $slice演算子を使用して配列の最後の要素を取得する

    3. Node.jsとMongoDBを使用したパスワードの保存

    4. MongoDBレプリケーションに「アービター」が必要なのはなぜですか?