2016-08-21 1 views
0

J'ai 3 différentes bases de données ".mdb" (Microsoft Access) disons "Branche A", "Branche B" et "Branche C", ils ont tous les mêmes tables de conception de base de données et tout et je veux générer un rapport en les combinant tous , quelque chose comme çaRapport d'accès MS combinant plusieurs bases de données

Total Sales Report 

Branch Name  Sales 
Branch A  10000$ 
Branch B  23331$ 
Branch C  50000$ 

comment les bases de données liées que je peux le faire, et est-il possible?! et puis-je utiliser une requête de tableau croisé les combinant tous?

Merci :)

Répondre

1

simplement un lien tables des autres bases de données .mdb puis exécutez votre requête de rapport qui semble être une requête globale du syndicat d'une ventes Tableau dans chaque base de données Direction. Assurez-vous de renommer des tables liées (de BranchASales, BranchBSales, BranchCSales) si elles partagent même nom:

SELECT [Branch Name], Sum(Sales) As SumOfSales 

FROM 
    (SELECT 'Branch A' As [Branch Name], Sales FROM [BranchASales] 
    UNION ALL 
    SELECT 'Branch B' As [Branch Name], Sales FROM [BranchBSales] 
    UNION ALL 
    SELECT 'Branch C' As [Branch Name], Sales FROM [BranchCSales]) 

GROUP BY [Branch Name] 

Alternativement, vous pouvez exécuter des requêtes appelant sources en dehors de la base de données actuelle sans tables liées juste tant que vous spécifiez le chemin. De même, vous pouvez interroger des classeurs Excel, csv/txt fichiers dans cette même approche:

SELECT [Branch Name], Sum(Sales) As SumOfSales  

FROM 
    (SELECT 'Branch A' As [Branch Name], Sales FROM [C:\Path\To\Branch A.mdb].[Sales] 
    UNION ALL 
    SELECT 'Branch B' As [Branch Name], Sales FROM [C:\Path\To\Branch B.mdb].[Sales] 
    UNION ALL 
    SELECT 'Branch C' As [Branch Name], Sales FROM [C:\Path\To\Branch C.mdb].[Sales]) 

GROUP BY [Branch Name] 

Dans ci-dessus deux requêtes, les tables dérivées sont utilisées, mais la FROM clause SELECT requête peut facilement être remplacée par une requête distincte, enregistrée (de même SELECT) dans la base de données courante.