SELECT CASE WHEN UpdateTs > CURDATE() AND UpdateTs < DATE_ADD(CURDATE(), INTERVAL 1 DAY) THEN If(Count >= 3, 1, 0) ELSE 0 END AS IsMax FROM TestTable WHERE id=1;
-- 上条语句:判断表TestTable 中 id=1 的行,UpdateTs 是否是今天,并且Count 是否小于等于 3。如果是:IsMax = 1 否:IsMax = 0
UPDATE TestTable SET Count = CASE WHEN UpdateTs > CURDATE() AND UpdateTs < DATE_ADD(CURDATE(), INTERVAL 1 DAY) THEN Count + 1 ELSE 0 END WHERE id = 1;
-- 上条语句:如果UpdateTs 是今天 Count + 1 ,否则 Count = 0