テーブルを作成し、いくつかのイベントのキャッシュされたステータスをそこに保存する必要があります。したがって、次の 2 つの操作のみを実行する必要があります。
1) イベントの ID、ステータス、およびこのレコードがデータベースに保存された時刻を挿入します。
2) 特定のイベント ID を持つ最後のレコードを取得します。
結果 (ステータス) を取得するには、いくつかの方法があります。
方法 1:
SELECT status FROM status_log a
WHERE a.event_id = 1
ORDER BY a.update_date DESC
LIMIT 1
方法 2:
SELECT status FROM status_log a
WHERE a.update_date = (
SELECT max(b.update_date) FROM status_log b
WHERE b.event_id = 1
) AND a.event_id = 1
だから私は2つの質問があります:
- 使用するクエリ
- update_date フィールドに設定するフィールド タイプ (int またはタイムスタンプ)