[Seasar-user:13472] Re: [DBFlute] LIKEをORでつなげたい

kubo [E-MAIL ADDRESS DELETED]
2008年 3月 29日 (土) 00:07:23 JST


久保です。

加藤さん、こんにちは

ANDとかORという感じではなく、

select ...
   from XXX
 where YYY like 'a%'
union
select ...
   from XXX
 where YYY like 'b%'
union
select ...
   from XXX
 where YYY like 'c%'

という感じのSQLになるはずですが、
そうならないでしょうか?

# ちなみにsplitByXxx()は利用せず、
# 自分でsplitで「for (String keyword : keywordList) {」
# するイメージです。

2008/3/28 Junichi Kato <[E-MAIL ADDRESS DELETED]>:
> 久保さん、
>  加藤です。
>
>  以下を試してみたのですが、ANDでつながってしまうようです。
>  ORでつなげるのは無理ですかね?
>
>
>  kubo さんは書きました:
>
>
> > 久保です。
>  >
>  > 加藤さん、こんばんは
>  >
>  > 昼はちょっと取り込んでて取り急ぎコメントでしたが、
>  > 実装イメージとしては以下のような感じになると思います。
>  > (動かしてないのであくまでイメージということで)
>  >
>  > XxxCB cb = new XxxCB();
>  > cb.setupSelect_...
>  > boolean first = true;
>  > for (String keyword : keywordList) {
>  >     if (first) {
>  >         cb.query().setYyy_LikeSearch(keyword, new Like...);
>  >         first = false;
>  >         continue;
>  >     }
>  >     XxxCB unionCB = new XxxCB();
>  >     unionCB.query().setYyy_LikeSearch(keyword, new LiKe...);
>  >     cb.union(unionCB.query())
>  > }
>  >
>  > 2008/3/26 Junichi Kato <[E-MAIL ADDRESS DELETED]>:
>  >
>  >> 久保さん、
>  >> 加藤です。どうもです。
>  >>
>  >> 了解しました。unionでやってみます。
>  >>
>  >>
>  >> 08/03/26 に kubo <[E-MAIL ADDRESS DELETED]> さんは書きました:
>  >>
>  >>
>  >>
>  >>> 久保です。
>  >>>
>  >>> 加藤さん、こんにちは
>  >>>
>  >>> 取り急ぎコメントさせて頂きます。
>  >>> splitByXxx()をor条件とする機能は今はありません。
>  >>> OR条件に関しては、ConditionBean.union()をご利用下さい。
>  >>> 但し、splitByXxx()で一本の文字列を分解するのは自分で
>  >>> 処理することにはなってしまいます。
>  >>>
>  >>>
>  >>> 2008/3/26 Junichi Kato <[E-MAIL ADDRESS DELETED]>:
>  >>>
>  >>>> 加藤です。
>  >>>>
>  >>>>  お世話になります。
>  >>>>  DBFluteの質問です。
>  >>>>
>  >>>>
>  >>>>
>  >> http://dbflute.sandbox.seasar.org/ja/tips-condition_bean_comparison.html
>  >>
>  >>>>  〉{Split処理} splitByXxx()を呼び出すことで、引数のvalueをSplitして複数の
>  >>>>  AND条件として付与できます。
>  >>>>  とあるのですが、
>  >>>>
>  >>>>  LIKEにて複数の検索条件をORでつなげる場合はどのようにするのがよいのでしょ
>  >>>>  うか?
>  >>>>  アドバイスをお願いいたします。
>  >>>>
>  >>>>
>  >>>>
>  >>>>
>  >>>>
>  >>>>  _______________________________________________
>  >>>>  Seasar-user mailing list
>  >>>>  [E-MAIL ADDRESS DELETED]
>  >>>>  https://ml.seasar.org/mailman/listinfo/seasar-user
>  >>>>
>  >>>>
>  >>> _______________________________________________
>  >>> Seasar-user mailing list
>  >>> [E-MAIL ADDRESS DELETED]
>  >>> https://ml.seasar.org/mailman/listinfo/seasar-user
>  >>>
>  >>>
>  >> _______________________________________________
>  >>  Seasar-user mailing list
>  >>  [E-MAIL ADDRESS DELETED]
>  >>  https://ml.seasar.org/mailman/listinfo/seasar-user
>  >>
>  >>
>  >>
>  > _______________________________________________
>  > Seasar-user mailing list
>  > [E-MAIL ADDRESS DELETED]
>  > https://ml.seasar.org/mailman/listinfo/seasar-user
>  >
>
>  _______________________________________________
>  Seasar-user mailing list
>  [E-MAIL ADDRESS DELETED]
>  https://ml.seasar.org/mailman/listinfo/seasar-user
>


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