Bonjour à tous,
Après avoir recherché sur le net je n'ai pas trouvé ce que je voulais, c'est pour cela que je post ici mon pb...
Je travaille sur Oracle et j'aurais besoin de créer un mini-procédure qui compare les lignes d'une table entre elles et les update...
Ex: Ma Table (sans clé primaire c'est pas ma faute c'est comme ça dans la base...)
Num_Client Num_Produit Pays
5 14 FRANCE
5 14 FRANCE
5 14 ARGENTINE
5 14 MAROC
5 14 MAROC
5 14 PAYS_BAS
5 14 PAYS_BAS
5 14 SUISSE
5 14 SUISSE
6 14 TURQUIE
6 15 FRANCE
6 15 FRANCE
J'ai besoin donc de créer une procédure qui puisse trier la table ORDER BY NUM_CLIENT,NUM_PRODUIT,PAYS puis qui compare la ligne 1 avec la ligne 2 et si ces 2 lignes sont identiques updater un champs LOGICAL_DELETE = 'Y' a la place de 'N', puis passer a la comparaison de la ligne 2 à 3 et ainsi de suite...J'y arrive tres bien dans d'autre langages mais là j'avoue qu'en PL/SQL je bloque...
Mon problème se situe surtout au nivea de la comparaison en PL, comment dire (en sachant que la table réel fait plus de 25000 lignes...)
IF MATABLE.Row1(Num_client,Num_produit,Pays) = MATABLE.Row2(Num_client,Num_produit,Pays)
UPDATE MATABLE
SET Row2.MONCHAMPS = 'Y'...
Cela doit donner a la fin une table du genre :
Num_Client Num_Produit Pays
5 14 FRANCE
5 14 ARGENTINE
5 14 MAROC
5 14 PAYS_BAS
5 14 SUISSE
6 14 TURQUIE
6 15 FRANCE
Avez vous une idée ?
Merci d'avance
Monsterfab
Partager