Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
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 25/10/2011, 16h19   #1
Membre chevronné
 
Avatar de Elwyn
 
Homme
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 836
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux

Informations forums :
Inscription : juillet 2006
Messages : 836
Points : 712
Points : 712
Par défaut Plusieurs sommes dans une requête

Bonjour,

imaginons une table comme ceci :

Code :
ID | SEVERITY | MESSAGE_ID
Est-il possible de faire une requête dont le résultat donnerait ceci :

Code :
HIGH | MEDIUM | LOW | MESSAGE_ID
Vous avez certainement compris que les trois premières colonnes contiennent en fait la somme des trois seules valeurs possibles de la colonne SEVERITY.

Merci d'avance pour vos réponses.
__________________
Dire Straits, Bob Dylan, Led Zeppelin, the Who, Pink Floyd, AC/DC, Guns & Roses, the Doors, ...
Elwyn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 16h26   #2
Membre Expert
 
Homme
Responsable de service informatique
Inscription : janvier 2009
Messages : 1 097
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 38
Localisation : France

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Boutique - Magasin

Informations forums :
Inscription : janvier 2009
Messages : 1 097
Points : 1 914
Points : 1 914
Bonjour,
Tu peux le faire avec une requête de ce genre:
Code SQL :
1
2
3
4
5
6
  SELECT messageid
       , sum(case severity when 'HIGH'   then 1 else 0 end) AS high
       , sum(case severity when 'MEDIUM' then 1 else 0 end) AS medium
       , sum(case severity when 'LOW'    then 1 else 0 end) AS low
    FROM latable
GROUP BY messageid;

Tatayo.
tatayo est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 25/10/2011, 16h49   #3
Membre chevronné
 
Avatar de Elwyn
 
Homme
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 836
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux

Informations forums :
Inscription : juillet 2006
Messages : 836
Points : 712
Points : 712
Très bien merci, je vais essayer ça.
__________________
Dire Straits, Bob Dylan, Led Zeppelin, the Who, Pink Floyd, AC/DC, Guns & Roses, the Doors, ...
Elwyn 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 12h24.


 
 
 
 
Partenaires

Hébergement Web