Bonjour ,

Je suis entrain de développer une requête me permettant de sélectionner des données qui vérifient ma condition dans le filtre .

En fait , je dois récupérer d'une table une valeur TD (pour un ID) correspondant à l'année N-1.
Faire une comparaison avec la valeur TD de l'année N (pour un ID)
Puis inserer dans une autre table si TD(N) >= 40% * TD(N-1)

Voici ma requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
INSERT INTO TABLE_CIBLE
SELECT * FROM TABLE_SOURCE MCT1
WHERE MCT1.I_TD >= 0.4 * (
select vam.I_TD from SOURCE vam
WHERE  MCT1.ID = vam.ID
AND vam.c_month = to_number(to_char(sysdate,'YYYY'))-1 || '12'
)
Voici l'erreur : ORA-01427: single-row subquery returns more than one row
Je ne vois pas comment je pourrais l'éviter
J'espère que j'étais clair dans l'explication de mon besoin
En vous remerciant.