Frage

Ich habe die folgenden drei Tabellen:

1) Süsse Tabelle

FruitIndex       CountryIndex       Sweetness
1                1                  10
1                2                  20
1                3                  400
2                1                  50
2                2                  123
2                3                  1
3                1                  49
3                2                  40
3                3                  2

2) Fruit Namenstabelle

FruitIndex      FruitName
1               Apple
2               Orange
3               Peaches

3) Land Name Tabelle

CountryIndex    CountryName
1               UnitedStates
2               Canada
3               Mexico

Ich versuche, eine CrossTab SQL-Abfrage ausführen mit, um am Ende:

Fruit\Country       UnitedStates Canada      Mexico
Apple               10           20          400
Orange              50           123         1
Peaches             49           40          2

Der schwierigste Teil ist die Zeilen / Spalten mit den entsprechenden Namen aus den Namen Tabellen zu beschriften.

Ich kann MS Access verwenden 2 Abfragen zu entwerfen,

  1. Erstellen der schließt sich das Obst / Ländernamen-Tabelle mit der Süße Tabelle
  2. ausführen Kreuztabellen- Abfrage

Allerdings habe ich Probleme dies in einer einzigen Abfrage zu tun. Ich habe versucht, die erste Abfrage nisten SQL in die zweite, aber es scheint nicht zu arbeiten.

Leider meine Lösung braucht, um ganz SQL sein, da es eine eingebettete SQL-Abfrage ist (kann sich nicht auf Abfrage-Designer in MS Access, etc.).

Jede Hilfe sehr geschätzt.

Prembo.

War es hilfreich?

Lösung

Wie wäre:

TRANSFORM First(Sweetness.Sweetness) AS FirstOfSweetness
SELECT Fruit.FruitName
FROM (Sweetness 
INNER JOIN Fruit 
ON Sweetness.FruitIndex = Fruit.FruitIndex) 
INNER JOIN Country 
ON Sweetness.CountryIndex = Country.CountryIndex
GROUP BY Fruit.FruitName
PIVOT Country.CountryName;

Andere Tipps

Ich hasse auf einer Außen Post verlassen und es als meine Antwort präsentieren, aber das ist ein ziemlich steil Thema und ich kann es nicht gerecht. Also schlage ich vor, schauen Sie unter dieser Artikel .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top