[Seasar-user:21091] S2DAO SQLのスマートな記述方法について
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2011年 10月 20日 (木) 18:58:34 JST
いつも大変お世話になっております。
pianyi と申します。
現在、S2DAOを使用し、SQLファイルの記述を行っております。
やりたい事の実現は出来たのですが、もっと良い記述方法は無いでしょうか。
実際のSQL:
SELECT *
FROM XXXX
/*BEGIN*/
WHERE
/*BEGIN*/
(
/*IF form.searchB != null && form.searchB != "" */XXXX.B = 2/*END*/
/*IF form.searchC != null && form.searchC != "" */OR XXXXX.C = 3/*END*/
)
/*END*/
/*IF form.searchB != null && form.searchB != "" *//*END*/
/*IF form.searchC != null && form.searchC != "" *//*END*/
/*IF form.searchA != null && form.searchA != "" */AND XXXX.A = 1/*END*/
/*END*/
;
同じ条件が2箇所に必要で、且つ下の方は出力内容の無いIF文になっています。
下記URLの記述を見て試してみましたが、うまく動作しませんでした。(記事が古すぎますよね…)
http://d.hatena.ne.jp/higayasuo/20040510/1084142290
条件Aのみ、条件A+B+C、条件B+Cのみ、条件なし の全パターンでSQLが実行され
且つ、もっとスマートな記述方法がありましたらご教授願います。
以上、よろしくお願いいたします。
開発環境:
・Java1.6.0_24
・Oracle11g
・s2-dao-1.0.51.jar
・s2-extension-2.4.44.jar
・s2-framework-2.4.44.jar
Seasar-user メーリングリストの案内