RDBGetで複数条件を動的に設定したい

ASTERIA Warpでこんなことできる?…と思うことなど、ご遠慮なく...(^_-)

RDBGetで複数条件を動的に設定したい

投稿記事by soukennbichaaa » 2017年12月04日(月) 23:25

Asteria初心者です。
現在以下のようなフローを実現したいと考えていますが、SQLのIN句でうまく
動かせず、困っています。

◆フローの流れ
RDBGet①(条件値の取得)→Mapper(条件値を変数にセット)→RDBGet②(SELECT)→Mapper(データのマッピング)→FilePut(ファイル出力)

このフローで②を行う際、複数の条件値をIN句に設定してデータを取得したいと考えています。
例:SELECT * from テーブル名 WHERE カラム名 IN(条件値);

この条件値は①で取得するDB上では「'A'」または「'A','B'」という形で登録しています。
しかし今の段階でRDBGetコンポーネントでIN句を使おうとしてもうまく行きません。
条件を動的に設定するため汎用的なフローにしたいのですが、IN句を使うにはどのように対処すればいいか、
わかる方がいらっしゃれば是非教えていただきたいと思います。
よろしくお願いいたします。
soukennbichaaa
 
記事: 12
登録日時: 2017年10月11日(水) 14:51

Re: RDBGetで複数条件を動的に設定したい

投稿記事by itete » 2017年12月05日(火) 12:31

RDBGet2 でSQLパラメーターを作成し、
SELECT * from テーブル名 WHERE カラム名 IN($SQLパラメーター$)
のようなSQL文として、直前のMapperでは「'A'」または「'A','B'」の
形式の文字列をSQLパラメーターにマッピングすればよいと思います。
(SQLパラメーターの前後を$ではさみます)
itete
 
記事: 156
登録日時: 2007年1月09日(火) 12:15


Return to ビギナールーム

オンラインデータ

このフォーラムを閲覧中のユーザー: Google [Bot] & ゲスト[1人]