通过在 SQL 中将递增值设置在用户定义变量中来递增多个时间戳值
mysqlmysqli database更新于 2024/4/5 23:15:00
递增值可以设置在用户定义变量中,如下所示。此处,"yourValue"是递增值。之后,使用 MySQL UPDATE 更新列并递增时间戳值 −
set @anyVariableName :=yourValue; update yourTableName set yourColumnName=yourColumnName+interval (@yourVariableName) second;
首先我们创建一个表 −
mysql> create table DemoTable ( DueDatetime timestamp ); Query OK, 0 rows affected (0.73 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into DemoTable values('2019-01-31 12 :30 :40'); Query OK, 1 row affected (0.25 sec) mysql> insert into DemoTable values('2019-09-06 10 :00 :00'); Query OK, 1 row affected (0.73 sec) mysql> insert into DemoTable values('2019-09-07 11 :10 :24'); Query OK, 1 row affected (0.25 sec)
使用 select 语句显示表中的所有记录 −
mysql> select *from DemoTable;
这将产生以下输出 −
+-----------------------+ | DueDatetime | +-----------------------+ | 2019-01-31 12 :30 :40 | | 2019-09-06 10 :00 :00 | | 2019-09-07 11 :10 :24 | +-----------------------+ 3 rows in set (0.00 sec)
以下是增加多个时间戳值 − 的查询
mysql> set @secondValue :=12; Query OK, 0 rows affected (0.00 sec) mysql> update DemoTable set DueDatetime=DueDatetime+interval (@secondValue) second; Query OK, 3 rows affected (0.99 sec) Rows matched : 3 Changed : 3 Warnings : 0
让我们再次检查表记录 −
mysql> select *from DemoTable;
这将产生以下输出。时间戳值现在已增加 −
+-----------------------+ | DueDatetime | +-----------------------+ | 2019-01-31 12 :30 :52 | | 2019-09-06 10 :00 :12 | | 2019-09-07 11 :10 :36 | +-----------------------+ 3 rows in set (0.00 sec)