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 :

Requete SQL sur une vue


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 225
    Par défaut Requete SQL sur une vue
    bonjour

    J'ai une vue qui la forme suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    admID     scId    value   date 
     
    1            2        12       05.01.2010 12:23
    1            2        13       05.01.2010 12:29
    1            3        10       04.01.2010 11:29
    1            3        11       04.01.2010 11:28
    1            3        21       04.01.2010 11:26
    1            3        31       04.01.2010 11:20 
    2            2        16       03.01.2010 17:20  
    2            2        17       03.01.2010 16:20  
    2            2        19       03.01.2010 15:20 
    2            3        27       03.01.2010 17:20
    Je peine à écrire une requete SQL qui me donnerais la vue suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    admID         value1    value2 
    1                25           73
    2                52           27
    les valeurs de value1 sont les sommes des valeurs de value pour scId = 2

    (i.e : pour admIs= 1 et scId = 2 on 25 = 12+13)

    et les valeurs de value2 sont les sommes des valeurs de value pour scId = 3.

    Merci pour l'aide

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    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 : 16 814
    Billets dans le blog
    14
    Par défaut
    Qu'as-tu essayé comme requête ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « 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 la suite Linux Mageïa !

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 225
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    Qu'as-tu essayé comme requête ?
    j'ai essayé cette requete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    select  X.id , X.value value1, Y.value  value2 from  (select T2.admID id,sum(T2.value) value from View T2  where   T2.scId    =3  group by T2.admID ) X ,
    (select T2.admID id, sum(T2.value) value from View T2  where   T2.scId    = 2 group by T2.admID) Y where X.id=Y.id
    mais elle ne donne que les lignes existante dans les deux vues X et Y..

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Par défaut
    Bonjour,

    Essayez avec CASE :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT 
           admid,
           sum(CASE scid WHEN 2 THEN value ELSE 0 END) AS value1,
           sum(CASE scid WHEN 3 THEN value ELSE 0 END) AS value2
    FROM ...
    GROUP BY admid

  5. #5
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 225
    Par défaut
    je mets quoi apres le from ?
    merci

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Par défaut
    Le nom de votre vue par exemple, vous ne nous l'avez pas donné.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/03/2008, 14h26
  2. requet sql sur une BD access
    Par k_boy dans le forum C++/CLI
    Réponses: 1
    Dernier message: 25/09/2007, 16h27
  3. PL-SQL sur une vue
    Par Mimile28 dans le forum SQL
    Réponses: 8
    Dernier message: 03/07/2007, 16h57
  4. [Vba-Excel] Exécuter une requete SQL sur une feuille de donnée
    Par Spacy_green dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/11/2006, 09h27
  5. Réponses: 23
    Dernier message: 19/09/2006, 11h33

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