Hi everybody,
I want to code this following query with an adapter but it's too difficult for me :
SELECT *
FROM VARIATION v, COMPOUND c, REACTION r, COMPOUND_ROLE_VOC crv, SUBSTANCE s
WHERE r.REACTION_ID = v.REACTION_ID
AND v.VARIATION_ID = c.VARIATION_ID
AND c.SUBSTANCE_ID = s.SUBSTANCE_ID
AND crv.ROLE_ID = c.ROLE_ID
AND crv.VOC_TEXT = 'P'
AND r.REACTION_ID IN
(
SELECT REACTION_ID
FROM VARIATION v, MOLECULE m, COMPOUND c, REACTION r, COMPOUND_ROLE_VOC crv, SUBSTANCE s
WHERE r.REACTION_ID = v.REACTION_ID
AND v.VARIATION_ID = c.VARIATION_ID
AND c.SUBSTANCE_ID = s.SUBSTANCE_ID
AND crv.ROLE_ID = c.ROLE_ID
AND m.MOLECULE_ID = c.MOLECULE_ID
AND m.MOLECULE_TYPE = 6
)
All is OK except the IN (...). I've founded no solution...
I found some documentation about the FieldCompareSetPredicate :
FieldCompareSetPredicate fcsp = new FieldCompareSetPredicate(ReactionFields.ReactionId, null, ReactionFields.ReactionId, null, SetOperator.In, (ReactionFields.ReactionId == 9));
I don't know how to put a complex query inside the IN (...), only simple query without relation are accepted.
Please help me to replace the (ReactionFields.ReactionId == 9) in my sample by a complex query.