2010-09-18 20 views
1

J'ai une situation comme celle-ci: J'ai besoin de trouver le i_chronicle_id d'un document. Si j'essaie avec r_object_id (ie sélectionnez i_chronicle_id de dm_document où r_object_id = 'un identifiant', il me retournera l'id_chronicle.Il n'y a pas de problème, mais si quelqu'un a modifié le document (extrait et enregistré) ma requête ci-dessus ne travailler parce que le r_object_id a changé dans cette situation, que je ne connais personne peut me aider avec dql dans une telle situationDQL pour obtenir i_chronicle_id de r_object_id

note:.? la raison pour laquelle je cherche la i_chronicle_id est d'obtenir la dernière r_object_id

.
+0

Accrochez-vous ... Pour obtenir le 'i_chronicle_id', vous devez connaître le' r_object_id', mais pour obtenir le 'r_object_id', vous devez d'abord rechercher le' i_chronicle_id'. Exigence circulaire ahoy? – Timwi

+0

J'ai le r_object_id. Mais ce n'est pas de la version actuelle. D'où je suis incapable de le trouver sous la table dm_document. Existe-t-il un moyen d'obtenir l'objet r_object_id de l'objet de la version actuelle à partir d'un objet r_object_id de l'objet de la version précédente? – Ananth

Répondre

2

essayer de faire quelque chose comme

select r_object_id from dm_document 
where i_chronicle_id in (
    select i_chronicle_id from dm_document (ALL) where r_object_id = ID('?') 
) 

le (ALL) mot-clé après le type sélectionne toutes les versions s

+0

Merci Michael, ça a marché – Ananth