Bonjour,
J'ai une table décrite comme suit :
Je sais que les messages du type "abc" ont une valeur pour time inférieure aux messages du type "bcd" au sein d'un même groupe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 CREATE TABLE message ( type VARCHAR2(50), time DATE, grp VARCHAR2(10) )
Je voudrais extraire de la table les groupes dont le message "bcd" a un time supérieur à "abc" de 15 minutes.
Comment faire ?
Pour l'instant, je suis parti sur cette idée mais je ne sais pas comment la terminer :
Je ne sais pas par quoi remplacer le [15 minutes] : par un string, un intervalle et surtout, quelle valeur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SELECT m1.grp AS grp FROM message m1, message m2 WHERE m1.grp = m2.grp AND m1.name = 'abc' AND m2.name = 'bcd' AND numtodsinterval(m2.time - m1.time, 'day') > [15 minutes]
D'avance merci à qui m'aidera.
P.S. J'ai pas trouvé mieux que la double jointure sur la même table. S'il y a mieux, je prends bien sûr !
Partager