Salut !
J'ai un petit souci avec une requête qui utilise une clause group by.
Je cherche a extraire les demandes d'un compte et pour chacune de ces demandes, je fais la somme des intervenants (recherche.nb_inter). Le problème est que dans ma table demande, j'ai 10 enregistrement pour le compte n° 120 et seulement 2 demandes sont retournées. Dans la table recherche, j'ai définit un nombre d'intervenants pour seulement 2 demandes (parmi les 10) et j'ai remarqué qu'en ajoutant un enregistrement dans cette table pour une autre demande, ma requête me retourne un enregistrement de +.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SELECT demande.id, demande.date_creation, compte.nom, civilite.libelle || ' ' || contact.nom INTITULE, demande.commentaire, SUM(recherche.nb_inter) INTER FROM demande, contact, compte, civilite, recherche WHERE demande.id_contact = contact.id AND contact.id_compte = compte.id AND civilite.id = contact.id_civilite AND recherche.id_demande = demande.id AND compte.id=120 GROUP BY demande.id, demande.date_creation, compte.nom, civilite.libelle || ' ' || contact.nom, demande.commentaire;
En gros j'aimerai avoir toutes les demandes d'un compte même si aucun intervenant n'est défini dans la table recherche.
Désolé si ce n'est pas super clair, je peux réexpliquer en cas de besoin.
Voici la structure de mes tables :
Demande :
Recherche :
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
19
20
21 Name Null? Type ------------------------------- -------- ---- ID NOT NULL NUMBER(11) ID_CONTACT NOT NULL NUMBER(7) ID_ETAT NOT NULL NUMBER(2) CLIENT_FINAL VARCHAR2(50) TOTAL NUMBER(8) DATE_DEBUT_CONTRAT DATE DATE_CONCLUSION DATE LIEU_INTERVENTION VARCHAR2(50) DPT_INTERVENTION VARCHAR2(2) CHANCE NUMBER(3) COMMENTAIRE VARCHAR2(250) TYPE_PRESTATION NUMBER(1) DATE_CREATION NOT NULL DATE USER_CREATION NOT NULL NUMBER(6) DATE_MODIF NOT NULL DATE USER_MODIF NOT NULL NUMBER(6) ID_CONCLUSION NUMBER(2) CODE_OFFRE NUMBER(6)
Merci d'avance pour vos réponses...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Name Null? Type ------------------------------- -------- ---- ID_DEMANDE NOT NULL NUMBER(11) CODE_PROFIL NOT NULL NUMBER(2) CODE_COMPETENCE NOT NULL NUMBER(6) NB_INTER NUMBER(3) DUREE NUMBER(5) PVJ NUMBER(5) FRAIS NUMBER(5)
Partager