私は3つのテーブルを持つデータベースの例を持っています。複数の結合でSQLを選択する
1 Work: workID, stateID, createddate
2 Work history table: workID, old_state, new_state, transitiondate
3 Work state: StateID; Statename
私は、リストの作品を印刷し、それらの状態の変化のすべてのだろうクエリを作成したいのは、可能性のある状態が1 = ready
、2 = test
と3 = approved
あるとしましょう。結果は次のようになります。
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
...
私はインナーので、私は簡単に状態テーブルからの仕事の現在の状態の名前を取得することができます加わるようにする方法を知っているが、私は昔の名前を取得することはできませんし、新しい州。どんな種類の結合コマンドを使うべきですか?
WorkStateテーブルを2回結合します。古い状態で1回、新しい状態で1回です。 – jarlh