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

Requêtes MySQL Discussion :

calcul dans des requetes (encore)


Sujet :

Requêtes MySQL

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 546
    Points : 219
    Points
    219
    Par défaut calcul dans des requetes (encore)
    Bonjour,

    Ensore quelque petit soucis de SQL...
    Voici ma table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    service | accesP | accesO | ladate
    ---------------------------------------
    s1      |      4 |      5 | 01/01/2006
    s1      |      5 |      5 | 01/01/2006
    s2      |      3 |      4 | 01/01/2006
    s3      |      5 |      3 | 01/01/2006
    s1      |      4 |      3 | 01/02/2006
    s1      |      5 |      4 | 01/02/2006
    Je voudrais obtenir le nombre de ligne dont accesO = 5 plus le nombre de ligne dont accesP = 5, le tout regroupé par service et pour une date donnée.
    Dans mon exemple, pour le 01/01/2006 je voudrais obtenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    service | valeur | ladate
    ------------------------------
    s1      |      3 | 01/01/2006
    s3      |      1 | 01/01/2006
    Et je ne vois pas comment l'écrire en SQL, si vous pouviez m'aider... Merci.

    Jérôme
    Jérôme

  2. #2
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt.


    Solution a tester

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    SELECT service,
    (sum(if(acessP=5,1,0)) + sum(if(acessO=5,1,0))) as valeur ,
    ladate FROM table  
    where ladate ='2006-01-01' group by service;

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 546
    Points : 219
    Points
    219
    Par défaut
    Merci Jota !!!!
    Ca a l'air de marcher...
    dis-moi, les if dans les select, c'est lié à Mysql ou SQL en général ?
    Merci.
    Jérôme

  4. #4
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 281
    Points : 11 737
    Points
    11 737
    Par défaut
    C'est du MySQL. En standard (ça fonctionne aussi dans MySQL), on utilise CASE WHEN :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT service,
    sum(CASE WHEN acessP=5 THEN 1 ELSE 0 END)
    + 
    sum(CASE WHEN acessO=5 THEN 1 ELSE 0 END) AS valeur ,
    ...
    Antoun
    Expert Essbase, BO, SQL

    La bible d'Essbase, 2ème édition

Discussions similaires

  1. calcul dans des requetes
    Par jejeman dans le forum Requêtes
    Réponses: 3
    Dernier message: 26/01/2007, 17h29
  2. Faire "remonter" les données dans des requetes imbriquées
    Par Earthwormjim dans le forum Requêtes
    Réponses: 5
    Dernier message: 30/08/2006, 17h37
  3. Effectuer des calculs dans des zones de texte
    Par flagfight dans le forum IHM
    Réponses: 3
    Dernier message: 07/07/2006, 16h01
  4. Calculs dans une requete avec conditions multiples
    Par Sha1966 dans le forum Access
    Réponses: 3
    Dernier message: 13/01/2006, 15h18
  5. Calcul dans des champs de saisie
    Par leeloo076 dans le forum ASP
    Réponses: 4
    Dernier message: 07/04/2004, 10h09

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