Précédent   Forum des professionnels en informatique > Bases de données > MySQL
MySQL Forum d'entraide MySQL. Avant de poster -> FAQ MySQL, Tutoriels MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/10/2011, 14h04   #1
Membre du Club
 
Inscription : avril 2008
Messages : 305
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : avril 2008
Messages : 305
Points : 67
Points : 67
Par défaut requete sql simple

Bonjour, comme l'intitulé le dit, j'ai un problème avec une requête simple (à mon avis). J'ai une liste de type :
Mr X ---- OK
Mr X -----KO
Mr X------OK

Je veux tout simplement afficher comme résultat de ma requête :

QUI-----OK------KO

Mr X-----2--------1

Le total des OK et KO par personne (sachant qu'il y a plusieurs personnes dans la liste).
__________________
Le temps est le pire enemi de l'homme
lerorodu51 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2011, 14h09   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 11 029
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 11 029
Points : 18 327
Points : 18 327
Envoyer un message via MSN à CinePhil
Un cours qui te sera utile et qui explique l'utilisation des fonctions d'agrégation et du GROUP BY.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2011, 14h16   #3
Membre du Club
 
Inscription : avril 2008
Messages : 305
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : avril 2008
Messages : 305
Points : 67
Points : 67
Oui j'ai déjà vu ce cours, et ça fait pas mal de temps que je fais du sql. J'arrive à avoir le résultat mais avec deux requetes, j'en veux une seule. Avec ce cours, j'avais déjà réussi à regrouper les OK ou les KO mais pas les 2 en même temps.

Code :
1
2
3
4
SELECT personne, COUNT(statut) AS nbst
FROM `admincnx`
WHERE personne<>'' AND statut LIKE 'OK'
GROUP BY personne
__________________
Le temps est le pire enemi de l'homme
lerorodu51 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2011, 14h20   #4
Membre Expert
 
Inscription : août 2008
Messages : 1 271
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 1 271
Points : 1 929
Points : 1 929
Par contre le cour n'aborde pas les petites astuces classiques pour nous.
Code :
1
2
3
4
5
SELECT personne,
       sum(case when statut  = 'OK' then 1 end) AS nb_ok,
       sum(case when statut  = 'KO' then 1 end) AS nb_ko
  FROM latable
 GROUP BY personne
Regarde aussi la partie du cours sur CASE
skuatamad est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 05/10/2011, 14h23   #5
Membre du Club
 
Inscription : avril 2008
Messages : 305
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : avril 2008
Messages : 305
Points : 67
Points : 67
Merci , je regarde tout de suite le cours, jamais utilisé ce genre de syntaxe. Bien le merci pour cette aide.
__________________
Le temps est le pire enemi de l'homme
lerorodu51 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h11.


 
 
 
 
Partenaires

Hébergement Web