ConditionBean.使い始めると便利ですね.
でも,少し疑問が,,,
以下のケースで,
cb.setupSelect_Author();
するのと,しないとではどう違うのでしょうか?
ドキュメントの文面では理解できませんでした.
4. Where句に指定する条件で無限階層のForeignTableのColumnの指定をサポート query().queryXxx().queryXxx().queryXxx()...と繋げることで「無限階層」に設定可能 ex) BOOKに対してForeignTableのAUTHORを結合してAUTHOR_AGEで30歳以上を検索。(AUTHOR_AGE降順) /- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // select ... // from BOOK book // left outer join AUTHOR author on book.AUTHOR_ID = author.AUTHOR_ID // where author.AUTHOR_AGE >= 30 // order by author.AUTHOR_AGE desc // final LdBookCB cb = new LdBookCB(); cb.query().queryAuthor().setAuthorAge_GreaterEqual(30);// ☆Point cb.query().queryAuthor().addOrderBy_AuthorAge_Desc(); final java.util.List<LdBook> ls = bhv.selectList(cb);
ex) BOOKに対してForeignTableのAUTHORを結合してAUTHORの名称を取得したいが、 AUTHOR_AGEが0歳のものは無効なものなので、結合に含めたくない検索。(AUTHOR_AGE降順) →但し、AUTHOR_AGEが0歳のAUTHORを参照しているBOOKは検索されなければならない。 /- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // select book.BOOK_ID, book..., author.AUTHOR_ID as authorId_0, author... // from BOOK book // left outer join (select * from AUTHOR where AUTHOR_AGE != 0) author // on book.AUTHOR_ID = author.AUTHOR_ID // order by author.AUTHOR_AGE desc // final LdBookCB cb = new LdBookCB(); cb.setupSelect_Author(); cb.query().queryAuthor().inline().setAuthorAge_NotEqual(new BigDecimal(0));// ☆Point cb.query().queryAuthor().addOrderBy_AuthorAge_Desc(); final java.util.List<LdBook> ls = bhv.selectList(cb); - - - - - - - - -/