Bonjour à tous,
voici mon problème : je dois compter dans une table le nombre de fois qu'un même utilisateur a créé ou modifié une ligne.
On peut le schématiser de la manière suivante :
Id_ligne | Createur | Modificateur
--------------------------------
1 | 10 | 12
1 | 12 | 01
1 | 12 | 10
1 | 10 | 12
Et je souhaiterais, avoir pour chaque utilisateur, le nombre de lignes modifiées et Crées sur 2 colonnes :
Utilisateur| Nb Création | nombre modification
--------------------------------------------
10 | 2 | 1
12 | 2 | 2
01 | 0 | 1
(Je schématise car je récupère également le nom de l'utilisateur et sa profession de 2 autres tables via jointures...)
Voici la requête que j'utilise :
Mais avec cette syntaxe, je récupère 2 lignes pour le même utilisateurs, or je souhaiterais une seule ligne par utilisateur.
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
22
23
24
25
26
27
28
29
30
31
32
33
34 select ni.NOM_COMPLET as 'Utilisateur', nm.LIBELLE as 'Libellé Métier', count(*) as 'Total Création' from ssr_rhs s join noyau_intervenant ni on ni.INT_ID = s.createur join noyau_metier nm on nm.metier_id = ni.profession_id group by ni.NOM_COMPLET,nm.LIBELLE UNION ALL select ni.NOM_COMPLET as 'Utilisateur', nm.LIBELLE as 'Libellé Métier', count(*) as 'Total Modif' from ssr_rhs s join noyau_intervenant ni on ni.INT_ID = s.modificateur join noyau_metier nm on nm.metier_id = ni.profession_id group by ni.NOM_COMPLET,nm.LIBELLE order by count(*) desc
J'ai essayé de la modifier pour la regrouper, mais je n'y arrive pas.
Si l'un de vous pourrais m'aiguiller, je vous en serais reconnaissant.
Merci d'avance.






Répondre avec citation





Partager