Bonjour,
pour bien me faire comprendre je vais tâcher de donner un max. d'info :
Merci d'avance de me dire si cela est possible (et évt. comment...):
Soit la table : table_1
id date P T S id_dis id_soc id_gen
-----------------------------------------------------------------------
13 23.08.2006 3 1000 1 3 1 5
15 13.01.2006 2 4 9 2 2 5
17 22.03.2006 3 9 9 3 3 3
19 18.04.2006 3 100 24 1 4 4
21 05.06.2006 2 102 18 2 20 1
22 18.04.2006 1 10 10 3 21 2
26 20.12.2005 1 15 12 1 22 5
27 10.05.2006 2 8 8 2 23 4
28 14.05.2006 3 22 20 3 1 1
29 20.05.2006 3 12 12 1 2 2
30 01.02.2006 2 150 23 2 3 5
31 10.10.2005 1 12 12 3 4 4
32 13.06.2006 1 5 5 1 20 1
33 13.12.2005 2 8 4 2 21 2
36 10.06.2006 3 14 14 3 22 3
39 10.01.2006 3 2 2 1 23 5
40 21.01.2006 2 6 6 2 1 1
42 02.02.2006 1 3 3 3 3 2
43 21.01.2006 1 0 0 1 2 3
44 30.04.2006 2 9 9 2 4 5
45 14.06.2006 2 20 10 3 22 4
46 20.01.2006 3 10 10 1 21 2
47 01.06.2006 2 4 4 2 22 3
48 22.08.2006 1 1 1 3 23 4
49 12.08.2006 1 0 0 0 0 0
50 24.08.1976 2 24 8 3 1 1
Avec un
GROUP BY id_soc final
--------------------------------------------------------------------------------------------------------------------
Résultat escompté :
col1 col2 col3 col4 ...
id_soc SUM(T) COUNT(id) SUM(S) Count(P=1) Count(P=2) Count(P=3) Count(T WHERE P=1) Count(T WHERE P=2) SUM(T WHERE id_dis=3)
1 1052 4 35 0 2 1 1048 3 1048
3 162 3 35 1 1 1 12 2 12
En fait j'aimerais que la même requête me retourne pour "Count(P=1)" un COUNT(SELECT T FROM table_1 WHERE table_1.P = 1) Soit le nombre d'occurence de T pour lesquels table_1.P = 1 par id_soc
Si c'est pas du français, je ferai un autre essai...
Partager