[Seasar-user:20486] 【DBFlute】外だしSQLについておご教示ください。

櫻井 周里 [E-MAIL ADDRESS DELETED]
2011年 1月 7日 (金) 19:20:56 JST


お世話になっております。

いつも参考にさせていただいてます。



開発でDBFluteを使っていますが、外だしSQLのところで悩んでいます。

お手数ですが、ぜひご教示くださいますようよろしくお願いいたします。



ラジオボタンの値が在籍者の場合(pmb.rdoMember =’ 在籍者’)

1:USR040TBL.USER_KBNが「1」のものを抽出

2:選択行が「あ」行の場合(pmb.txtSelect = ‘あ’)、
USR110TBL.USER_SHIMEI_KANJI ‘あ%’ or ‘い%’ を抽出

  (選択行はあ〜わまで)

3:USR040TBL.USER_ID = USR110TBL.USER_ID

ラジオボタンの値が退職者の場合(pmb.rdoMember =’ 退職者’)

1:USR040TBL.USER_KBNが「2」のものを抽出

2:選択行が「あ」行の場合(pmb.txtSelect = ‘あ’)、
USR110TBL.USER_SHIMEI_KANJI ‘あ%’ or ‘い%’ を抽出

(選択行はあ〜わまで)

3:USR040TBL.USER_ID = USR110TBL.USER_ID

ラジオボタンの値が全部の場合(pmb.rdoMember =’ 全部’)

1:USR040TBL.USER_KBNが「1」、「2」、「3」のものを抽出

2:選択行が「あ」行の場合(pmb.txtSelect = ‘あ’)、
USR110TBL.USER_SHIMEI_KANJI LIKE ‘あ%’ or ‘い%’ を抽出

(選択行はあ〜わまで)

3:USR040TBL.USER_ID = USR110TBL.USER_ID



という条件を外だしSQLで書きたいのですが。。。。。。

2,3の組み合わせはできたのですが、1まで組み合わせるとできないでかなり困って
います。

大変申し訳ございませんが、ご教示よろしくお願いいたします。



現在できているソースを以下に記載させていただきます。

-- #UserSelectMemberListCme#

-- *USER_ID*

-- *USER_KBN*

-- *USER_SHIMEI_KANJI*





-- !UserSelectMemberListPmb!

-- !!String txtSelect!!

-- !!String rdoMember!!





SELECT

        USR110TBL.USER_ID           USER_ID

       ,USR040TBL.USER_KBN          USER_KBN

       ,USR110TBL.USER_SHIMEI_KANJI USER_SHIMEI_KANJI

FROM

       USR110TBL,

       USR040TBL

WHERE

/*BEGIN*/

       /*IF pmb.txtSelect == 'あ'*/

       and (USER_SHIMEI_KANA LIKE 'ア%' or USER_SHIMEI_KANA LIKE 'イ%' or
USER_SHIMEI_KANA LIKE 'ウ%' or USER_SHIMEI_KANA LIKE 'エ%' or
USER_SHIMEI_KANA LIKE 'オ%')

       /*END*/

       /*IF pmb.txtSelect == 'か'*/

       or (USER_SHIMEI_KANA LIKE 'カ%' or USER_SHIMEI_KANA LIKE 'キ%' or
USER_SHIMEI_KANA LIKE 'ク%' or USER_SHIMEI_KANA LIKE 'ケ%' or
USER_SHIMEI_KANA LIKE 'コ%')

       /*END*/

       /*IF pmb.txtSelect == 'さ'*/

       or (USER_SHIMEI_KANA LIKE 'サ%' or USER_SHIMEI_KANA LIKE 'シ%' or
USER_SHIMEI_KANA LIKE 'ス%' or USER_SHIMEI_KANA LIKE 'セ%' or
USER_SHIMEI_KANA LIKE 'ソ%')

       /*END*/

       /*IF pmb.txtSelect == 'た'*/

       or (USER_SHIMEI_KANA LIKE 'タ%' or USER_SHIMEI_KANA LIKE 'チ%' or
USER_SHIMEI_KANA LIKE 'ツ%' or USER_SHIMEI_KANA LIKE 'テ%' or
USER_SHIMEI_KANA LIKE 'ト%')

       /*END*/

       /*IF pmb.txtSelect == 'な'*/

       or (USER_SHIMEI_KANA LIKE 'ナ%' or USER_SHIMEI_KANA LIKE 'ニ%' or
USER_SHIMEI_KANA LIKE 'ヌ%' or USER_SHIMEI_KANA LIKE 'ネ%' or
USER_SHIMEI_KANA LIKE 'ノ%')

       /*END*/

       /*IF pmb.txtSelect == 'は'*/

       or (USER_SHIMEI_KANA LIKE 'ハ%' or USER_SHIMEI_KANA LIKE 'ヒ%' or
USER_SHIMEI_KANA LIKE 'フ%' or USER_SHIMEI_KANA LIKE 'ヘ%' or
USER_SHIMEI_KANA LIKE 'ホ%')

       /*END*/

       /*IF pmb.txtSelect == 'ま'*/

       or (USER_SHIMEI_KANA LIKE 'マ%' or USER_SHIMEI_KANA LIKE 'ミ%' or
USER_SHIMEI_KANA LIKE 'ム%' or USER_SHIMEI_KANA LIKE 'メ%' or
USER_SHIMEI_KANA LIKE 'モ%')

       /*END*/

       /*IF pmb.txtSelect == 'や'*/

       or (USER_SHIMEI_KANA LIKE 'ヤ%' or USER_SHIMEI_KANA LIKE 'ユ%' or
USER_SHIMEI_KANA LIKE 'ヨ%')

       /*END*/

       /*IF pmb.txtSelect == 'ら'*/

       or (USER_SHIMEI_KANA LIKE 'ラ%' or USER_SHIMEI_KANA LIKE 'リ%' or
USER_SHIMEI_KANA LIKE 'ル%' or USER_SHIMEI_KANA LIKE 'レ%' or
USER_SHIMEI_KANA LIKE 'ロ%')

       /*END*/

       /*IF pmb.txtSelect == 'わ'*/

       or (USER_SHIMEI_KANA LIKE 'ワ%')

       /*END*/

/*END*/

       and USR110TBL.USER_ID    = USR040TBL.USER_ID





お手数をおかけいたします。

よろしくお願いいたします



櫻井





========================================================

(株)バンキングシステムズ

SS部  :櫻井 周里 

e-mail :[E-MAIL ADDRESS DELETED]

tel   :03-3851-6631

fax     :03-3851-6638

=========================================================





-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20110107/d1d6edce/attachment.html>


Seasar-user メーリングリストの案内