Bonjour,
j'aimerais effectuer une requête un peu spéciale mais je n'y arrive pas.
je me trouve avec 3 tables
User Transaction et UserTransaction.
les champs qui nous intéressent sont id dans User, id dans Transaction et idUser et idTransaction dans UserTransaction.
UserTransaction permet donc de faire une relation ManyToMany entre User et Transaction

Ce que je voudrais pouvoir faire c'est une requête qui me sort pour chaque ligne de UserTransaction le idUser, le idTransaction et le nombre de UserTransaction avec cet idTransaction

j'ai essayé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 SELECT T.id, UT.idUser, 
		(SELECT count(id) FROM  UserTransaction AUT where AUT.idTransaction=T.id) 
	FROM Transaction T, UserTransaction UT 
	WHERE T.id=UT.idTransaction;
mais j'ai l'erreur suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ERROR 1140 (42000): Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
j'ai aussi tenté
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT T.id, UT.idUser, count(*)
	FROM Transaction T, UserTransaction UT  
	GROUP BY T.id;
qui ne me donne pas le résultat souhaité.

j'ai également essayé

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT T.id, UT.idUser,  
		(SELECT count(id) FROM UserTransaction AUT WHERE AUT.idTransaction=T.id) 
	FROM Transaction T, UserTransaction UT  
	GROUP BY T.id;
et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT T.id, UT.idUser,  
		MAX((SELECT count(id) FROM UserTransaction AUT WHERE AUT.idTransaction=T.id))
	FROM Transaction T, UserTransaction UT  
	GROUP BY T.id;
qui me donnent les erreurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ERROR 1242 (21000): Subquery returns more than 1 row
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ERROR 1111 (HY000): Invalid use of group function
Si quelqu'un a une idée de ce qui pourrait résoudre mon problème je suis preneur

Merci
Frol