mysql上的重复密钥更新看看更新了什么

bfrts1fy  于 2021-06-21  发布在  Mysql
关注(0)|答案(0)|浏览(319)

我有一个查询,检查是否增加用户的游戏连胜。

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。
有没有一种方法可以在不做单独测试的情况下查看条纹何时被重置为1 SELECT 声明?在这种情况下,我想为我的记录做一些php日志记录。mysql的 affected_rows 只会告诉我行是否更新了,而不会告诉我它是如何更新的。有什么想法吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题