-- 用戶簽到時 UPDATE 簽到表 SET 連續簽到天數 = CASE 最近簽到日期 WHEN Today THEN 連續簽到天數 WHEN Today - 1 THEN (連續簽到天數 + 1) MOD 8 ELSE 1 END, 最近簽到日期 = Today WHERE 用戶ID = 用戶ID; -- 查詢用戶連續簽到天數 SELECT CASE WHEN 最近簽到日期 >= Today - 1 THEN 連續簽到天數 ELSE 0 END AS 連續簽到天數 FROM 簽到表 WHERE 用戶ID = 用戶ID;