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 imbriqué??


Sujet :

Langage SQL

  1. #1
    Membre régulier Avatar de EssaiEncore
    Inscrit en
    Janvier 2005
    Messages
    144
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 144
    Points : 74
    Points
    74
    Par défaut Requete imbriqué??
    bonjour,

    J'aurais voullu savoir s'il etait possible d'avoir dans la meme requete La somme de toute les valeur d'un stock + tout les autres champs?

    J'ai ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT SUM(QTE_STOCK*PRIX_UNITAIRE)as Total
     FROM PRODUITS
     WHERE QTE_STOCK >= 0
    Et j'aimerais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT PRODUITS.*,SUM(QTE_STOCK*PRIX_UNITAIRE)as Total
     FROM PRODUITS
     WHERE QTE_STOCK >= 0
    Est-ce possible ? Doit-on passé obligatoirement par une requete imbriqué?

    Merci d'avance

  2. #2
    Membre averti

    Inscrit en
    Août 2005
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 220
    Points : 364
    Points
    364
    Par défaut somme imbriquée
    C'est tout à fait possible sans requête imbriquée mais le problème c'est que SUM est une focntion d'agrégation (comme COUNT, AVG, MAX ...) donc elle exige que les autres champs que tu utilises dans ton résultat (ici tous les champs de ta table PRODUITS soient regroupés... Donc tu ajoute un GROUP BY avec tous les champs de ta table PRODUITS et cela devrait fonctionner.

  3. #3
    Membre régulier Avatar de EssaiEncore
    Inscrit en
    Janvier 2005
    Messages
    144
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 144
    Points : 74
    Points
    74
    Par défaut
    Merci de ta reponse, malheureusement le resultat n'est pas celui que j'esperais, apres avoir rajouter dans ma close GROUP BY tout les champs de ma tables, il n'y a pas de colonne SUM.
    Le calcul de SUM ne c'est pas fait
    Ca me retourne un resultat par ligne et non un calcul total.

  4. #4
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Tu devrais donner un extrait de ton modèle de données.
    Pour moi, une table PRODUIT devrait avoir IdProduit pour PK, donc inutile de faire des sommes par produit : je ne peux rien faire sans ton schéma !

  5. #5
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    Bonjour,

    Si tu veux le total de ttes les lignes tu vas etre obligé de faire 2 rq.,
    si tu veux sommer ligne par ligne tu fais 1 group by.

    A +

  6. #6
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Ooops, j'ai compris (testé avec SQLServer) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT *, (SELECT SUM(QTE_STOCK*PRIX_UNITAIRE) FROM PRODUITS) as Total 
    FROM PRODUITS

  7. #7
    Membre averti

    Inscrit en
    Août 2005
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 220
    Points : 364
    Points
    364
    Par défaut
    Logique:
    Il s'agit de 2 requêtes très différentes: avec Access, tu ne peux pas faire les deux requêtes en une...

    Tu peux le faire en langage SQL avec un COMPUTE mais Access (JetSQL) ne reconnais pas cette instruction.

Discussions similaires

  1. [requete] requete imbriquée
    Par karamazov994 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/07/2005, 17h54
  2. Requete imbriquée, oui mais...
    Par zax-tfh dans le forum Requêtes
    Réponses: 6
    Dernier message: 24/03/2005, 01h48
  3. Equivalent d'une requete imbriquée ??
    Par webtheque dans le forum Requêtes
    Réponses: 8
    Dernier message: 31/08/2004, 10h07
  4. Requetes imbriquées et jointures
    Par Emile Le Tueur* dans le forum Requêtes
    Réponses: 4
    Dernier message: 31/03/2004, 23h12
  5. Requete imbriquée sur Firebird ou Interbase
    Par Thib dans le forum Bases de données
    Réponses: 2
    Dernier message: 08/03/2004, 09h00

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