Plusieurs record pour un seul record

Le
Fred's
Bonjour,

Comment puis-je mettre toutes ces données sur un seul ID?
ID Style Commande Quantité Commentaires
1 lyla 1234 10 probleme1
2 lyla 1234 20 probleme2
3 lyla 1234 25 probleme3

pour que cela me donne un seul ID comme ci-dessous.

Style Commande Quantité Commentaires
lyla 1234 55 probleme1, probleme2, probleme3


Merci!
Fred's
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fabien
Le #18596001
Fred's a écrit :
Bonjour,

Comment puis-je mettre toutes ces données sur un seul ID?
ID Style Commande Quantité Commentaires
1 lyla 1234 10 probleme1
2 lyla 1234 20 probleme2
3 lyla 1234 25 probleme3

pour que cela me donne un seul ID comme ci-dessous.

Style Commande Quantité Commentaires
lyla 1234 55 probleme1, probleme2, probleme3


Merci!
Fred's


Bonjour,
mise a part une requete de regroupement sur les 3 premiers champs et
ensuite une requete qui reprend ce resultat en ajoutant un champ qui
contientrait le retour d'une fonction qui par le Style renverrai la
liste des commentaire je vois pas.

Requete 1
Select Style,commande,sum(quantité) as Total from T-Table
Group By Style,Commande,Sum(Quantité)

Requete 2
Select Style,commande,Total,Liste(Style) as Commentaire from Requete1

Public Function Liste(St as string) as string
Dim RST_ST as dao.Recordset
Dim Lst as String
Lst=""
Set Rst_St=currentdb.openrecordset("select Commentaire from T_Table
where Style='" & St & "'")
While not rst.eof
Lst=Lst & Rst_St("Commentaire") & ","
Rst_St.movenext
Wend
If len(Lst)>0 then Liste=left(Lste,len(lst-1))
Rst_St.close
Set Rst_St=nothing
End func

@ tester
Michel__D
Le #18596391
Bonjour,

Si tu accepte d'avoir plusieurs champs [Commentaires], voici ma proposition en 2 requêtes :

La 1ère requête qui prépare les données nommé "ReqPrepare"

SELECT T1.ID, T1.Style, T1.Commande, First(T1.Commentaires) AS Commentaires,
Sum(T2.Quantité) AS SommeDe, Count(T2.ID) AS Rang
FROM LaTable T1 INNER JOIN LaTable T2 ON (T1.Style=T2.Style) AND (T1.ID>=T2.ID)
GROUP BY T1.ID, T1.Style, T1.Commande;

et la requête finale qui fournit le résultat :

TRANSFORM First(T.[Commentaires]) AS Valeur
SELECT T.Style, T.Commande, Max(T.SommeDe) AS [Quantité]
FROM ReqPrepare AS T
GROUP BY T.Style, T.Commande
PIVOT "Commentaire" & T.Rang;



"Fred's" news:
Bonjour,

Comment puis-je mettre toutes ces données sur un seul ID?
ID Style Commande Quantité Commentaires
1 lyla 1234 10 probleme1
2 lyla 1234 20 probleme2
3 lyla 1234 25 probleme3

pour que cela me donne un seul ID comme ci-dessous.

Style Commande Quantité Commentaires
lyla 1234 55 probleme1, probleme2, probleme3


Merci!
Fred's
Gilbert
Le #18596381
Bonjour,

Tu l'as rêvé, Jessy l'a fait pour toi.
http://access.jessy.free.fr/htm/Query/ConcatForQuery.htm

--
Cordialement,

Gilbert


"Fred's" news:
Bonjour,

Comment puis-je mettre toutes ces données sur un seul ID?
ID Style Commande Quantité Commentaires
1 lyla 1234 10 probleme1
2 lyla 1234 20 probleme2
3 lyla 1234 25 probleme3

pour que cela me donne un seul ID comme ci-dessous.

Style Commande Quantité Commentaires
lyla 1234 55 probleme1, probleme2, probleme3


Merci!
Fred's
Publicité
Poster une réponse
Anonyme