Bonjour à tous,
j'aurais besoin d'un peu d'aide sur une requête Oracle ou je voudrais utiliser des variables afin de rendre plus visible et facile d'accès la recherche de données. Le résultat de la requête doit être affiché sur un écran et il y aura donc plusieurs éléments résultants de celle-ci
J'ai la requête ci-dessous qui fonctionne parfaitement. Or, je souhaiterais remplacer le sysdate, par une date que je pourrais déclarer en début de requête
J'ai tenté d'utiliser les variables mais la requête retourne plusieurs éléments. J'ai tenté d'utiliser la fonction cursor mais j'ai du mal à aller jusqu'au bout, et surtout afficher le résultat de ma requête sur Toad.
Voici la requête qui fonctionne :
Voici le système que j'aimerais mettre en place mais qui ne marche pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select mr.code, mr.creationdate from cswo_mr mr left join cswo_mrstatus mrs on mr.id=mrs.origin_id where to_char(mr.creationdate,'yyyy-mm-dd HH24:mi:ss') between to_char(sysdate,'yyyy-mm-dd') ||' 05:00:00' and to_char(sysdate,'yyyy-mm-dd') ||' 12:59:59'
J'ai le message d'erreur ci-dessous .
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
16
17
18 Declare DateDeb DATE; DateFin DATE; HeureDeb varchar2(30); HeureFin varchar2(30); di varchar2(33); Begin DateDeb:=to_date('2016-01-01','yyyy-mm-dd'); DateFin:=to_date('2017-01-31','yyyy-mm-dd'); HeureDeb:=' 05:00:00'; HeureFin:=' 12:59:59'; select mr.code into di from cswo_mr mr left join cswo_mrstatus mrs on mr.id=mrs.origin_id where mr.creationdate between DateDeb || HeureDeb and datefin || HeureFin; End; /
Un peu d'aide serait nécessaire svp. MerciORA-01422: l'extraction exacte ramène plus que le nombre de lignes demandé
ORA-06512: à ligne 14
Partager