前回までMongoDBPutコンポーネントの利用方法を紹介しました。今回はMongoDBGetコンポーネントでデータを取得する方法を紹介します。
データの取得
MongoDBへの接続情報とMongoDBのデータは前回と同じものを使います。

まずは、「男子生徒の2位から5位までの成績」を取得してみましょう。

MongoDBGetの出力はJSON形式の文字列なので、JSONDecodeコンポーネントでレコードに変換します。
取得したい情報は「男子生徒の2位から5位までの成績」なので、「クエリー」に性別が「男性」であることを指定します。そして「ソート」、「リミット」、「オフセット」にそれぞれ「点数の降順」、「4人」、「2位から」の条件を指定します。
「ループを開始」を「いいえ」に指定すると、MongoDBGetの出力は、一人一人のデータが格納されているJSONオブジェクトの配列となりますので、JSONDecodeコンポーネントの「JSON種別」を「配列」に設定してください。「ループを開始」を「はい」に指定した場合は、一回のループで一人のデータが格納されているJSONオブジェクトが出力されますので、JSONDecodeの「JSON種別」を「オブジェクト」に設定してください。
そして、JSONDecodeコンポーネントの出力ストリームをレコードに設定して、各フィールドの名前とデータ型を指定します。
※JSONDecodeコンポーネントは、ASTERIA Warp2412から廃止されています。今後はJSONストリームをご使用ください。本記事でJSONストリームを使用するには、MongoDBGetの出力をJSONにしたうえで、JSONDecodeコンポーネントの代わりにMapperコンポーネントで出力形式にRecordを指定します。
このフローを実行すると、結果は次のようになります。

クエリーセレクタを使おう
MongoDBGetコンポーネントでは複雑なクエリーセレクタを使用することができます。ここでは、「成績が70以上の男子生徒と成績が80以下の女子生徒」を検索してみましょう。

フローは前節のものと同じですが、「クエリー」のところにセレクタを使用するクエリーを入力します。
このフローを実行すると、結果は次のようになります。

クエリーセレクタと前節で紹介したソート属性などを組み合わせて利用すると、複雑なクエリーを簡単なフローで実行できますね。
以上で、説明は終わりです。
MongoDBを利用するフロー作成のお役に立てれば幸いです。