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

mongodb合計文字列をクエリする方法は?

    これは、MongoDB3.4では不可能です。この機能はすでにリクエストされていますが、まだ実装されていません:

    文字列と数値を変換するための型変換メカニズムが必要です

    したがって、問題を解決する唯一の方法は、JavaScriptでtotalAmountの合計を手動で実行することです...

    編集

    これはMongoDB4.0で可能になりました あるタイプから別のタイプに変換する演算子を導入しました。たとえば、 $toDouble

    したがって、クエリは次のようになります。

    db.collection.aggregate([
      {
        "$group": {
          "_id": null,
          "totalAmount": {
            "$sum": {
              "$toDouble": "$orderTotal.amount"
            }
          },
          "count": {
            "$sum": 1
          }
        }
      }
    ])
    

    ここで試すことができます: mongoplayground.net/p/4zJTPU912Es




    1. MongoDB \ Driver \ Exception \ InvalidArgumentExceptionプラットフォームで整数のオーバーフローが検出されました:300000000000

    2. MongoDBでSpringBootを使用する方法

    3. コレクションに保存されている配列の形状を変更し、CSVにエクスポートします

    4. Mongo 2.6.1-認識されないパイプラインステージ名:'$ out'