Fusion de résultats de requêtes dans une unique Table

Fusion de résultats de requêtes dans une unique Table - SQL/NoSQL - Programmation

Marsh Posté le 01-04-2010 à 16:21:36    

Bonjour tout le monde!
 
Voici ma problématique (et ça serait super si vous pourriez m'apporter un peu d'aide!)
Je travaille sur Access 2002 SP3
 
J'ai une table géante avec beaucoup d'informations de facturation de produits pour divers clients.
Cette table qu'on appellera Tab_Mère a schématiquement cette forme:
 
N°Client || N°Produit || Quantité || Prix || Date_Facturation
   1              123886          2          300       02.02.2010
   1              123886          1          150       02.02.2010
   2              123885          1          100       01.02.2010
   1              333885          2          100       01.02.2010
   1              345885          2          250       03.02.2010
 
Un N°Prod est constitué de 6chiffres les trois derniers permettent de les regrouper dans certaines gammes:
ex 123886   tous les produits qui ont une forme '*886' sont de la gamme g1.
 
Mon but est de faire, dans une nouvelle table qu'on appellera Tab_Fille (oui c'est original je sais), pour chaque client
le nombre de g1 (N°Prod LIKE '*886'), g2(N°Prod LIKE '*885'), etc  qui lui a été facturé.
Schématiquement la table Tab_Fille aura cette forme:
 
N°Client || Qte_g1 || Qte_g2 || .........
     1            3             4
     2            0             1
 
 
Je suis capable de faire assez aisément par requête la somme pour chaque client du nombre de produits commandés pour une gamme.
 
SELECT TM.Client, Sum(TM.QTE) AS g1, TM.Date
FROM Tab_Mère AS [TM]
WHERE (TM.N°Produit Like '*886')
GROUP BY TM.Client, TM.Date;
 
Cependant, pour le faire sur plusieurs gammes et l'insérer dans une table, le tout sans doublons là je ne sais plus du tout faire.
 
C'est là que je requiert votre aide!
Donc si vous avez une superbe idée je suis tout ouie!
 
Je vous remercie beaucoup d'avance!

Reply

Marsh Posté le 01-04-2010 à 16:21:36   

Reply

Marsh Posté le 06-04-2010 à 14:46:39    

Regarde si l'instruction PIVOT existe sur Access 2002, c'est probablement le seul moyen de faire ce que tu veux en une commande.
Si ca existe pas, il me semble que ca existe depuis un petit temps sur Excel.
 
Tu devrais aussi penser a migrer ta db Access vers SQL Server 2008 (ou SQL Server 2008 Express si tu veux du gratuit), plus tes tables access vont grossire, plus tu auras des problemes.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed