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 et SQL. Discussion :

passer un parametre dans select count


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 10
    Points : 6
    Points
    6
    Par défaut passer un parametre dans select count
    --------------------------------------------------------------------------------

    Bonjour,
    ceci est un message corrigé
    il y a deux ou trois jours je cherchais à résoudre le problème suivant :

    dans une table , j'ai une colonne niveaux, puis une colonne numéro question, puis une colonne résultats qui peuvent être 0,1 ou 9.

    Comment construire ma requête pour avoir en sortie une colonne avec le nombre de 0, une autre avec le nombre de 1 puis la dernière avec le nombre de 9 , pour chaque question ?

    du genre :

    Code :
    niveaux------NumQuestion----nbreDe0---nbrDe1----nbrDe9
    -VAM-------------A-------------1----------3----------5
    -VAM-------------B-------------3----------4----------2
    -VAM-------------C-------------6----------2----------1
    ....etc...Puis j'ai trouvé la requête suivante, qui fonctionne :

    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    SELECT     classes, s.numCompet, SUM(s.Expr1) AS nbr0, SUM(s.Expr2) AS nbr1, SUM(s.Expr3) AS nb9
    FROM         (SELECT     classes, numCompet, COUNT(resultats) AS Expr1, 0 AS Expr2, 0 AS Expr3
                           FROM          tabResultats
                           WHERE      (classes = 'VAM') AND (resultats = '0')
                           GROUP BY classes, numCompet
                           UNION
                           SELECT     classes, numCompet, 0 AS Expr1, COUNT(resultats) AS Expr2, 0 AS Expr3
                           FROM         tabResultats
                           WHERE     (classes = 'VAM') AND (resultats = '1')
                           GROUP BY classes, numCompet
                           UNION
                           SELECT     classes, numCompet, 0 AS Expr1, 0 AS Expr2, COUNT(resultats) AS Expr3
                           FROM         tabResultats
                           WHERE     (classes = 'VAM') AND (resultats = '9')
                           GROUP BY classes, numCompet) AS s
    GROUP BY classes, s.numCompet
    Problème: lorsque je veux passer le niveau (VAM dans la requete) en parametre, ça ne marche plus.
    comme je débute, est ce une erreur de syntaxe ?( je mets des ? à la place de VAM)
    Comment puis-je faire?
    Merci pour l'aide

    je precise que ma table est dans une base access
    A+

  2. #2
    Futur Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 10
    Points : 6
    Points
    6
    Par défaut parametre dans une requete
    bonjour,
    cela est peut etre tres simple , mais je n'y arrive pas ; peut etre que je n'utilise pas la synthaxe qu'il faut. Voici ma question :

    dans le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    SELECT     classes, s.numCompet, SUM(s.Expr1) AS nbr0, SUM(s.Expr2) AS nbr1, SUM(s.Expr3) AS nb9
    FROM         (SELECT     classes, numCompet, COUNT(resultats) AS Expr1, 0 AS Expr2, 0 AS Expr3
                           FROM          tabResultats
                           WHERE      (classes = 'VAM') AND (resultats = '0')
                           GROUP BY classes, numCompet
                           UNION
                           SELECT     classes, numCompet, 0 AS Expr1, COUNT(resultats) AS Expr2, 0 AS Expr3
                           FROM         tabResultats
                           WHERE     (classes = 'VAM') AND (resultats = '1')
                           GROUP BY classes, numCompet
                           UNION
                           SELECT     classes, numCompet, 0 AS Expr1, 0 AS Expr2, COUNT(resultats) AS Expr3
                           FROM         tabResultats
                           WHERE     (classes = 'VAM') AND (resultats = '9')
                           GROUP BY classes, numCompet) AS s
    GROUP BY classes, s.numCompet
    comment mettre en parametre la chaine VAM

    je travaille avec une base access sous vs2005

    merci encore une fois de votre aide

Discussions similaires

  1. [JSF] passer un parametre dans un popup
    Par maximus001ma dans le forum JSF
    Réponses: 5
    Dernier message: 07/08/2009, 18h16
  2. passer un parametre dans un void *
    Par contremaitre dans le forum C
    Réponses: 16
    Dernier message: 27/02/2008, 14h57
  3. passer deux parametres dans navigateurl d'une datalist
    Par imanesl dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/04/2007, 10h40
  4. faire passer des parametres dans l'url
    Par Freyja dans le forum Réseau/Web
    Réponses: 2
    Dernier message: 21/08/2006, 15h57

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