IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Requête avec la fonction CASE


Sujet :

Langage SQL

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2021
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Requête avec la fonction CASE
    Bonjour,

    j'ai une question, est ce que vous pouvez m'aider?
    je dois réaliser une requête SQL
    qui donne un tableau avec 8 colonnes et 2 lignes
    la première colonne est le nombre d'employé (COUNT(`employeeNumber`)'Total')

    les employé sont répartis dans des bureau donc ils on chacun un office code qui vas de 1 a 7
    donc les autres colonnes sont intitulé bureau 1, bureau 2...
    et juste en dessous je dois marque le nombre d'employés avec le office code qui correspond

    donc j'ai sa mais il me met un tableau de 8L*9C:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT COUNT(`employeeNumber`)'Total' ,
     
      CASE WHEN `officeCode` = 1 THEN COUNT(*) END AS 'Bureau 1',
      CASE WHEN `officeCode` = 2 THEN COUNT(*) END AS 'Bureau 2',
      CASE WHEN `officeCode` = 3 THEN COUNT(*) END AS 'Bureau 3',
      CASE WHEN `officeCode` = 4 THEN COUNT(*) END AS 'Bureau 4',
      CASE WHEN `officeCode` = 5 THEN COUNT(*) END AS 'Bureau 5',
      CASE WHEN `officeCode` = 6 THEN COUNT(*) END AS 'Bureau 6',
      CASE WHEN `officeCode` = 7 THEN COUNT(*) END AS 'Bureau 7'
     
     
    FROM `employees`
    GROUP BY `officeCode`
    Pouvez vous m'aider s'il vous plait?

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 386
    Points
    18 386
    Par défaut
    Enlevez le group by, et modifiez le code des bureaux par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    count(CASE WHEN `officeCode` = 1 THEN 1 END) AS 'Bureau 1',

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2021
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Requête SQL reuissi
    Effectivement, sa marche beaucoup mieux merci beaucoup

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 849
    Points : 52 972
    Points
    52 972
    Billets dans le blog
    6
    Par défaut
    Au passage CASE n'est pas une fonction, mais un opérateurs comme :
    • + - * /
    • BETWEEN
    • LIKE
    • IN
    • ...



    A +

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [A-07] Requête avec la fonction AJDATE
    Par chus03 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 10/12/2008, 23h45
  2. Problème dans requête avec la fonction Right
    Par Mariboo dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 17/08/2006, 10h27
  3. #Erreur dans une requête avec une fonction personnalisée
    Par pguiheu dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 04/07/2006, 15h45
  4. [Hibernate] Requête avec un LIKE %% case insensitive
    Par n@n¤u dans le forum Hibernate
    Réponses: 4
    Dernier message: 21/06/2006, 17h27
  5. [Débutant / SQL] Requête avec la fonction MAX
    Par bugmenot dans le forum Access
    Réponses: 3
    Dernier message: 14/04/2006, 10h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo