Bonjour,
Novice en plsql je rencontre un problème.
Je fais varier des dates de critère pour mes conditions sql.
Ma requête est lancé par le biais d'un while et les résultats s'affichent correctement lorsque dans ma condition de requête est restreinte (employé DUPONT)
résultat :
01/01/2010 31/01/2010 dupont 0.25
01/02/2010 28/02/2010 dupont 0.35
01/03/2010 31/03/2010 dupont 0.40
Si je veux faire la même chose sur tous mes employés j'ai un problème avec un retour d'erreur :
Ma requête fonctionne correctement juste en sql.ORA-01422: l'extraction exacte ramène plus que le nombre de lignes demandé
de où peut venir le problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 SET SERVEROUTPUT ON DECLARE BEGIN date_debut := TO_DATE('20050101','yyyymmdd'); date_arret := TO_DATE('20050131','yyyymmdd'); date_fin_lancement:=LAST_DAY(date_debut); WHILE date_debut<=date_arret LOOP SELECT.......... date_debut:=ADD_MONTHS(date_debut,+1); date_fin_lancement:=ADD_MONTHS(date_fin_lancement,+1); DBMS_OUTPUT.PUT_LINE(TO_CHAR(date_debut,'yyyymmdd')||' '||TO_CHAR(date_fin_lancement,'yyyymmdd')||' '||employe||' '||pour_affectation); END LOOP; END;
Partager