0

如何每天重置表中的唯一变量?

换句话说,当一天结束时,唯一变量再次从 0 开始。

4

1 回答 1

1

假设您的 MySQL 版本支持这些,您可能可以通过简单的触发器获得所需的结果。考虑下表:

id  ephem  value1  value2
1   1412   this    that
2   2317   the     other
(&c.)

在此示例中,ephem是自创建行时午夜以来的秒数,显然将在每天午夜重置为零。您可以使用以下触发器在创建行时自动设置此值,该触发器在我测试它的 MySQL 5.1.66 实例上按预期工作:

CREATE TRIGGER set_ephemeral_day_value
  BEFORE INSERT ON table
  FOR EACH ROW
  SET new.ephem = CAST(MOD(UNIX_TIMESTAMP(), 86400) AS UNSIGNED INTEGER);
于 2013-07-25T22:08:38.767 回答