次のテーブルを含むアプリを作成しています: (1) employee_type、(2) employee、(3) employee_action。
Employee_action は employee への外部キーであり、予想どおり、何が起こったかの説明とイベントの日付が含まれています。
ただし、従業員は時間の経過とともにタイプを変更できます (昇進、降格、異動など)。私のスキーマがこれと同じくらい単純である場合、John が 10 年前にピザを配達していたとき、John が会社の CEO であったことを示す履歴レポートを生成できます。
従業員がアクションを実行した時点で特定の一連の特性を持っていたという事実を保存するための最良の方法は何ですか?
ここで私の問題を簡単に述べています。私は 3 つよりも多くのテーブルを持っており、私が心配しているのは従業員の位置だけではありません。すべてを非正規化して、可能なすべての従業員フィールドを含む履歴テーブルを作成することは、私にとって選択肢ではありません。
ありがとう、これが明確であることを願っています。