Requête de requête [Access] - SQL/NoSQL - Programmation
Marsh Posté le 24-12-2007 à 10:32:31
SELECT C.nom, C.prénom, C.adresse, P.intitule, P.type, P.fournisseur, qté, [qté]*[prix] AS [prix total], SUM([qté]*[prix]) AS [total à payer]
FROM Vente AS V, Produit AS P, Client AS C
WHERE (((C.nom)=[saisir_le_nom]) And ((V.code_produit)=P.code_produit) And ((V.code_client)=C.code_client))
GROUP BY C.nom, C.prénom, C.adresse, P.intitule, P.type, P.fournisseur,
qté, [qté]*[prix]
Suit pas sure pour le group by [qté]*[prix]. Je sais pas si cela va passer.
Essaye et si cela ne va pas, je te donnerais une autre synthaxe.
Marsh Posté le 24-12-2007 à 10:50:18
J'avais déja tenté cette solution mais en fait, le total à payer prends la valeur du prix total, donc il y as toujours un problème dans l'affichage ... sniff !
Marsh Posté le 24-12-2007 à 12:05:09
Peanuts03 a écrit : J'avais déja tenté cette solution mais en fait, le total à payer prends la valeur du prix total, donc il y as toujours un problème dans l'affichage ... sniff ! |
ça m'étonnerais
essaye cela et essaye cette fois ci plutot que de me dire que tu as déjà essayé
SELECT nom, prénom, adresse, intitule, type, fournisseur, qté, prix_total,
(SELECT SUM([qté]*[prix]) AS [total à payer]
FROM Vente AS V, Produit AS P, Client AS C
WHERE (((C.nom)=result.nom) And ((V.code_produit)=P.code_produit) And ((V.code_client)=C.code_client))) as [total à payer]
FROM (
SELECT C.nom as nom, C.prénom as prénom, C.adresse as adresse, P.intitule as intitule, P.type as type, P.fournisseur as fournisseur, qté, [qté]*[prix] AS [prix_total]
FROM Vente AS V, Produit AS P, Client AS C
WHERE (((C.nom)=[saisir_le_nom]) And ((V.code_produit)=P.code_produit) And ((V.code_client)=C.code_client))) as result;
enfin tu vois le genre, Ce genre de requête doit fonctionner. A toi d'adapté la jointure entre la première et la seconde requête.
Marsh Posté le 24-12-2007 à 18:20:11
Cette dernière requête marche du feu de dieu
Merci beaucoup !!!! (et pour ta première phrase, si j'avais déja essayé avec un pote la première que tu m'avais dites désolé ...)
Marsh Posté le 23-12-2007 à 17:56:19
Voici ma première requête :
SELECT C.nom, C.prénom, C.adresse, P.intitule, P.type, P.fournisseur, qté, [qté]*[prix] AS [prix total]
FROM Vente AS V, Produit AS P, Client AS C
WHERE (((C.nom)=[saisir_le_nom]) And ((V.code_produit)=P.code_produit) And ((V.code_client)=C.code_client));
Et voici ma deuxième requête :
SELECT SUM([qté]*[prix]) AS [total à payer]
FROM Vente AS V, Produit AS P, Client AS C
WHERE (((C.nom)=[saisir_le_nom]) And ((V.code_produit)=P.code_produit) And ((V.code_client)=C.code_client));
Le but de la requête n°1 est de saisir toutes les info. demandées pour un client spécifique. Le but de la requête n°2 est de calculer le montant total déboursé par le même client.
Pour un état qui devrait faire l'impression d'une facture pour ce client, j'ai besoin que ces deux requêtes ne fasse qu'une, car en utilisant ces deux requêtes pour mon état, il y a un bug qui se trouve au niveau du total à payer. Au lieu de le prendre sur la requête n°2, il demande à l'utilisateur de le saisir lui même donc au final il est faut.
Pour plus d'info, n'hésitez pas à me demander et merci pour votre aide