Oracle 10g XEにおいて select ... from AAA left outer join (select * from BBB where xxx >= 3) BBB と select ... from AAA left outer join BBB on AAA.AAA_ID = BBB.AAA_ID and xxx >= 3 が同じ実行計画だった! (AAAをScan後にBBBを条件踏まえてINDEX利用で結合) (以前MySQLだとちょっと違う実行計画になってた) ConditionBeanで「...().inline().setXxx」使おうが 「...().on().setXxx」使おうが“Oracle”ではあんまり変わらないのかも。 ただ、実際件数が違ったりインスタンスの状況が違ったりしたら 実行計画変わるかもしれないから本当はもっと厳密な検証が必要です。 (そんなのする時間ない...)