Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Plusieurs record pour un seul record

3 réponses
Avatar
Fred's
Bonjour,

Comment puis-je mettre toutes ces donn=E9es sur un seul ID?
ID Style Commande Quantit=E9 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=E9 Commentaires
lyla 1234 55 probleme1, probleme2, probleme3


Merci!
Fred's

3 réponses

Avatar
Fabien
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
Avatar
Michel__D
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" a écrit dans le message de
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
Avatar
Gilbert
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" a écrit dans le message de
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