Ich habe ein Beispiel für eine Datenbank mit drei Tabellen.SQL-Auswahl mit mehreren Joins
1 Work: workID, stateID, createddate
2 Work history table: workID, old_state, new_state, transitiondate
3 Work state: StateID; Statename
Sagen wir mögliche Zustände sind 1 = ready
, 2 = test
und 3 = approved
ich Abfrage machen wollen, die Liste Werke und alle ihre Zustandsänderungen drucken. Die Ergebnisse sollten in etwa so aussehen:
ID, createddate, Currentstate, OldState, Newstate, transitiondate
1, 1-1-2016, approved, ready, test, 1-1-2016
1, 1-1-2016, approved, test, approved, 2-1-2016
2, 1-5-2016, test, ready, test, 1-5-2016
3, 1-10-2016, approved, ready, test, 1-10-2016
3, 1-10-2016, approved, test, approved, 1-15-2016
...
Ich weiß, wie Innen machen verbinden, so kann ich einfach den Namen des aktuellen Status der Arbeit von Staats Tisch bekommen, aber ich kann nicht die Namen der alten bekommen und neuer Staat. Welche Art von Join-Befehlen sollte ich verwenden?
WorkState-Tabelle zweimal beitreten; einmal für alten Staat und einmal für neuen Staat. – jarlh