我有一个查询,检查是否增加用户的游戏连胜。
INSERT INTO PlayStreak (id, curr_streak, last_play_date)
VALUES (?, 1, ?)
ON DUPLICATE KEY UPDATE
curr_streak = CASE
WHEN last_play_date = ? THEN curr_streak + 1
WHEN last_play_date < ? THEN 1
END
last_play_date = ?
它基本上检查last_play_date
是昨天(在这种情况下增加条纹)还是昨天之前,其中将条纹重置为1,因为用户跳过了一天。
有没有办法在没有单独的SELECT
语句的情况下查看条纹何时重置为1?在这种情况下,我想为我的记录做一些PHP日志记录。 MySQL的affected_rows
只会告诉我 行是否已更新,而不是 如何更新。有什么想法吗?