Bjr,
Je désire mettre a jour un champ oracle (statut) que sur les doublons et sur les dates les moins recentes.
afin d'obtenir
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 -tableA- objet date statut voiture 02/03/2011 2 voiture 02/02/2011 2 voiture 02/04/2011 2 velo 02/04/2011 2 velo 02/05/2011 2
1-
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 -tableA- objet date statut voiture 02/03/2011 3 voiture 02/02/2011 2 voiture 02/04/2011 3 velo 02/04/2011 2 velo 02/05/2011 3
Je pense créer une table temporaire et copier les doublons les plus vieux avec leur rowid respectifs.
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select rowid from tableA a where rowid > ( select min(rowid) from tableA b where b.objet= a.objet );
2-
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select * FROM tableA WHERE ROWID NOT IN ( SELECT max(ROWID) FROM tableA GROUP BY objet HAVING count(objet)>1 );
puis mettre a jour le statut la table d'origine en recherchant par rowid
merci de vos réponses.




Répondre avec citation




Partager