「id」、「user_id」、「points」、「datetime_gained」に似た構造のreward_pointsテーブルがあります。Mysqlは、単一クエリで行を徐々に更新します。
各user_idには、それぞれ複数の報酬ポイントを持つ複数の行を設定できます。利用可能なポイントの合計は、すべての行の合計です(user_idによって参照されます)。
ユーザーがポイントを使っている場合は、ポイントの合計から最も古いポイントからポイントを差し引く必要がありますdate time_gainedフィールド)を使用して、次の最も古いものを順番に使用して、割り当てられたすべてのポイントが割り当てられます。
これは明らかにスクリプト言語では簡単にはできませんが、純粋なMySQLを使用していますか?
これはまさに私が持っていたのと同じ考えです。あなたは速すぎました。 – DonCallisto
素早い応答をありがとう。あなたの提案は、おそらくより良い方法です。 – Alistair