私はこれを長く困難な方法で行いましたが、より迅速かつ簡単に行うことができることを知っています;)
「puzzle_level」という列がある場合、puzzle_level=5 のレコードごとに 10 ポイント、puzzle_level=6 のレコードごとに 25 ポイント、puzzle_level=7 の場合は 50 ポイントが必要です。
クイック編集、実際にはPHPで変数の合計が必要なので、 $total_points = $sql_formula になります
CASE
条件式で簡単に実行できます。
SELECT
points +
CASE puzzle_level
WHEN 5 THEN 10
WHEN 6 THEN 25
WHEN 7 THEN 50
END AS totalpoints
FROM your_table
これにより、パズルレベルに基づいたポイント数が列の合計ポイント数に追加されpoints
ます。
次に、'totalpoints'
PHP で列を参照するだけです。
UPDATE `table`
SET `points` =
IF `puzzle_level` = 5 THEN 10
ELSEIF `puzzle_level` = 6 THEN 25
ELSEIF `puzzle_level` = 7 THEN 50
END IF