Bonjour,

j'ai une table comme ceci:
mysql> SELECT * FROM answers WHERE id_project='25' AND (id='4' or id='3');
+------------+--------+----------+----+---------+-------+------------------+
| id_project | id_axe | id_theme | id | id_user | value | comment_by_theme |
+------------+--------+----------+----+---------+-------+------------------+
|         25 |      1 |        2 |  4 |       3 |     3 |                  |
|         25 |      1 |        2 |  3 |       3 |     3 |                  |
|         25 |      1 |        2 |  4 |       2 |     2 |                  |
|         25 |      1 |        2 |  3 |       2 |     2 |                  |
|         25 |      1 |        2 |  4 |       4 |     1 |                  |
|         25 |      1 |        2 |  3 |       4 |     1 |                  |
+------------+--------+----------+----+---------+-------+------------------+
6 rows in set (0.00 sec)

J'aurais voulu que chaque utilisateur (id_user) n'aparaisse qu'une seule fois.
Je fais donc:

mysql> SELECT * FROM answers WHERE id_project='25' AND (id='4' or id='3') 
group by id_user;
+------------+--------+----------+----+---------+-------+------------------+
| id_project | id_axe | id_theme | id | id_user | value | comment_by_theme |
+------------+--------+----------+----+---------+-------+------------------+
|         25 |      1 |        2 |  4 |       2 |     2 |                  |
|         25 |      1 |        2 |  4 |       3 |     3 |                  |
|         25 |      1 |        2 |  4 |       4 |     1 |                  |
+------------+--------+----------+----+---------+-------+------------------+
3 rows in set (0.00 sec)

Maintenant, j'aurais voulu savoir combien j'ai de ligne, et la moyenne de 
"value".

Je fais donc:
mysql> SELECT count(id_project), avg(value) FROM answers WHERE id_project='25' 
AND (id='4' or id='3') group by id_user;
+-------------------+------------+
| count(id_project) | avg(value) |
+-------------------+------------+
|                 2 |     2.0000 |
|                 2 |     3.0000 |
|                 2 |     1.0000 |
+-------------------+------------+
3 rows in set (0.00 sec)

Ce n'est pas �a que je veux, j'aurais voulu obtenir: 
+-------------------+------------+
| count(id_project) | avg(value) |
+-------------------+------------+
|                 3 |     2.0000 |
+-------------------+------------+

Comment faire? merci beaucoup!
-- 
Yann Sagon
--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.

Répondre à