[Seasar-user:16819] Re: [S2Dao] 複合主キーのテーブルでIN句を使用した検索方法について

kubo [E-MAIL ADDRESS DELETED]
2009年 2月 3日 (火) 14:14:50 JST


久保(jflute)です。

> SELECT * FROM emp
>  WHERE (job, mgr) IN (('dummy11', 'dummy12'), ('dummy21', 'dummy22'))
>
> 実際に発行されるSQL文は上記のような形で検索したいと思っています。
> ...と、書いたのですが調べてみたところ、複数列のIN句指定はSQL標準
> ではないということを初めて知りました。 m(_ _)m

こちら、恐らくOracleですよね?
ご利用のDBを提示されたほうが解決が速いことが多いので、
さしつかえのない限りで提示して頂けると助かります。

2009/2/3 黒瀬健二 <[E-MAIL ADDRESS DELETED]>:
> 黒瀬です。
>
>> ■対応するSQLファイル(EmployeeDao_getEmployees.sql)
>> INの後ろにコメントでパラメータと対応付けます。
>>
>>  SELECT * FROM emp
>>  WHERE job IN /*jobs*/('dummy1','dummy2')
>
> IN句に指定するキーが一つの場合は上記で良いと理解している
> のですが、今回は複合キーですので
>
> SELECT * FROM emp
>  WHERE (job, mgr) IN (('dummy11', 'dummy12'), ('dummy21', 'dummy22'))
>
> 実際に発行されるSQL文は上記のような形で検索したいと思っています。
> ...と、書いたのですが調べてみたところ、複数列のIN句指定はSQL標準
> ではないということを初めて知りました。 m(_ _)m
>
> となると、やはりS2Daoで上記のような検索は当然サポートしていない
> でしょうか。。。
>
> 以上、よろしくお願い致します。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


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