前回までMongoDBPutコンポーネントの利用方法を紹介しました。今回はMongoDBGetコンポーネントでデータを取得する方法を紹介します。
データの取得
MongoDBへの接続情報とMongoDBのデータは前回と同じものを使います。
まずは、「男子生徒の2位から5位までの成績」を取得してみましょう。
MongoDBGetの出力はJSON形式の文字列なので、JSONDecodeコンポーネントでレコードに変換します。
取得したい情報は「男子生徒の2位から5位までの成績」なので、「クエリー」に性別が「男性」であることを指定します。そして「ソート」、「リミット」、「オフセット」にそれぞれ「点数の降順」、「4人」、「2位から」の条件を指定します。
「ループを開始」を「いいえ」に指定すると、MongoDBGetの出力は、一人一人のデータが格納されているJSONオブジェクトの配列となりますので、JSONDecodeコンポーネントの「JSON種別」を「配列」に設定してください。「ループを開始」を「はい」に指定した場合は、一回のループで一人のデータが格納されているJSONオブジェクトが出力されますので、JSONDecodeの「JSON種別」を「オブジェクト」に設定してください。
そして、JSONDecodeコンポーネントの出力ストリームをレコードに設定して、各フィールドの名前とデータ型を指定します。
このフローを実行すると、結果は次のようになります。
クエリーセレクタを使おう
MongoDBGetコンポーネントでは複雑なクエリーセレクタを使用することができます。ここでは、「成績が70以上の男子生徒と成績が80以下の女子生徒」を検索してみましょう。
フローは前節のものと同じですが、「クエリー」のところにセレクタを使用するクエリーを入力します。
このフローを実行すると、結果は次のようになります。
クエリーセレクタと前節で紹介したソート属性などを組み合わせて利用すると、複雑なクエリーを簡単なフローで実行できますね。
これまでの4回でMongoDBのコンポーネントの使用方法を紹介しました。いかがでしたでしょうか?
MongoDBを利用するフロー作成のお役に立てれば幸いです。
それでは、また。