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

mongoDBでOHLCを集約しながら時間のギャップを回避する方法

    $condを追加できます ギャップを説明する演算子とそれに続く$filter 空の配列値をフィルタリングします。

    2つの変更が必要です。

    null値の配列ではなく、ギャップの[]値を格納するための最初の変更。

    内部の$let式を以下に更新します:

    {
      "$let":{
        "vars":{"five":...},
        "in":{
          "$cond":[
            {"$eq":["$$five",[]]},
            "$$five",
            [{"$arrayElemAt":[{"$arrayElemAt":["$$five",-1]},0]},
             ....
            {"$arrayElemAt":[{"$arrayElemAt":["$$five",-1]},-1]}]
          ]
        }
      }
    }
    

    出力から空の配列値をフィルタリングするための2番目の変更。

    {
      "$project":{
        "data":{
          "$let":{
            "vars":{"mints":...},
            "in":{"$filter":{"input":{"$map":...},as:"flr", "cond":{"$ne":["$$flr",[]]}}}
          }
        }
      }
    }
    



    1. Java mongodbドライバーの_idフィールドを使用してドキュメントをクエリする方法は?

    2. 存在する場合は更新する方法、そうでない場合は新しいドキュメントを挿入しますか?

    3. ドメインで発生したイベントからRedMQでハンドラーを設定する方法

    4. RedisConf18のRdbtools