À l'aide de n-uplets dans ORACLE DANS la clause et une condition pour un élément du tuple

J'ai vu beaucoup de questions ici, pour l'utilisation de n-uplets dans la clause IN.
Ma situation est un peu différente des autres.
Utilisation générale des tuples dans la clause sera comme ci-dessous

    Select * from MY_TABLE
    where (id,name,date) IN ((1,'new','10-JUL-13'),(2, 'old','09-JUN-13'))

Considérant la requête ci-dessus, mon exigence est de récupérer les enregistrements avec le nom et l'identifiant valeurs ainsi que la date dans une gamme donnée. disons

    effectiveDate <= date <= termDate  

Je suis en utilisant ORACLE base de données et MyBatis ORM.
Je vais obtenir des données comme une liste d'objets, donc quand j'utilise mybatis je peux utiliser un foreach/pour boucle pour remplir les tuples, mais quand je veux utiliser l'état pour l'une de ces valeurs à partir de l'objet.

Lorsque j'utilise Mybatis pour une valeur de lire à partir d'une liste, la clause where comme ci-dessous

    <where>
        and (id,name) IN
   <foreach item="object" collection="data" open="(" separator=","close=")">
    (#{object.id},#{object.name})
   </foreach>
    </where>

J'ai par la condition dans la boucle.

Attendant l'avis d'un expert.
Merci à l'avance.

  • and date between '1/2/2013' and '2/3/2013' ne fonctionne pas comme une finale de prédicat? Bonne chance.
InformationsquelleAutor Bharath ABK | 2013-07-17