次のような人へのステータス変更の履歴を保存するテーブルがあります。
id | username | date | status
日付フィールドは、ステータスが更新された日時であり、ステータス フィールドには、その日付以降の新しいステータスが含まれます。
したがって、テーブルの日付は次のようになります。
1 | セラフェイム | 2012-03-03 | "新着" 2 | ジョン | 2012-03-05 | "新着" 3 | セラフェイム | 2012-03-13 | "保留中" 4 | セラフェイム | 2012-03-15 | "年" 5 | ジョン | 2012-03-05 | "保留中"
などなど
ここで、過去の特定の日付について、各ユーザーがその時点で持っていたステータスを取得するクエリが必要です。たとえば、2012-04-14 の場合、次の結果を取得したいと思います
セラフェイム | "保留中" ジョン | "新着"
2012-03-04 の場合、取得する必要があります
セラフェイム | "新着"
それを行うSQLクエリを考えられる人はいますか? 私はこれをプログラムで行いたくありません! 私はmysqlを使用していますが、それが私の問題に関連しているとは思いません...
前もって感謝します