Page 1 sur 1

Plusieurs count

Posté : 31 déc. 2010, 10:20
par energie13
Bonjour,
J'ai la table logs suivante :
idLog userLogin userAgent userService userProfile actionStatus actionSall

Je souhaite formater les résultats suivants :
____________________________________________________________________________________________
userLogin|userService|actionSall |Total (requete actionSall = X)|Total (requete actionSall = Y)|

et de les grouper par login (userLogin) et service (userService)

J'essaie avec la requête suivante :

Code : Tout sélectionner

( SELECT userLogin, userService, actionSall, COUNT( * ) AS TotalX FROM `log` WHERE actionSall = 'X' GROUP BY userLogin, userService ) UNION ( SELECT userLogin, userService, actionSall, COUNT( * ) AS TotalY FROM `log` WHERE actionSall = 'Y' GROUP BY userLogin, userService )
et j'obtiens le résultat suivant :
userLogin | userService | actionSall | TotalVoipDebug
dont actionSall = X et Y mais pas en colonne comme je le souhaitais.

Ca fait qqes jours que je galère si qqn avait une astuce ou une idée ca serait top

Je vous remercie par avance.

Re: Plusieurs count

Posté : 31 déc. 2010, 10:31
par xTG
Ce n'est pas une union mais des sous-requêtes qu'il te faut. :)
(
SELECT userLogin, userService, actionSall, (SELECT COUNT( * ) FROM `log` WHERE actionSall = 'X' GROUP BY userLogin, userService) AS TotalX, (SELECT COUNT( * ) FROM `log` WHERE actionSall = 'Y' GROUP BY userLogin, userService) AS TotalY
FROM `log`
)
Essayes ceci, je n'ai aucunement testé cependant. :)

Re: Plusieurs count

Posté : 31 déc. 2010, 11:31
par energie13
Merci pour la réponse :)
J'ai l'erreur suivante :

Code : Tout sélectionner

#1242 - Subquery returns more than 1 row
Il y a plusieurs lignes de résultats je ne comprends pas d'ou vient l'erreur ou ce qui cloche. Je continue a chercher :s

Re: Plusieurs count

Posté : 31 déc. 2010, 11:47
par xTG
Pas forcement bizarre.
Tu as des utilisateurs provenant de différents services. ^^
Donc (userLogin, userService, userSall), soit 3 n-uplets (? = on se fiche de la valeur) :
1, 1, ?
2, 1, ?
3, 2, ?

renverra 2 n-uplets :
2
1

Je vois le soucis, mais mes connaissances en SQL ne me permettent pas de t'aider... :/
Si je trouve j'apporterai une réponse mais j'espère que quelqu'un pourra t'éclairer avant.

Re: Plusieurs count

Posté : 02 janv. 2011, 01:13
par energie13
Personne ? si qqn avait une piste ca serait vraiment cool :(

Re: Plusieurs count

Posté : 02 janv. 2011, 12:35
par zeus
Donne nous le schéma SQL de ta table (commande CREATE TABLE) ainsi qu'un petit jeu de test pour qu'on puisse essayer