作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以在 mysql 上增加日期值?说我有这个:
+------+---------------------+
| PID | mydate |
+------+---------------------+
| 1 | 2016-08-06 08:00:00 |
| 2 | 2016-08-06 08:00:00 |
| 3 | 2016-08-06 08:00:00 |
+------+---------------------+
我想让每个值增加 10 小时,如下所示:
+------+---------------------+
| PID | mydate |
+------+---------------------+
| 1 | 2016-08-06 18:00:00 |
| 2 | 2016-08-07 04:00:00 |
| 3 | 2016-08-07 14:00:00 |
+------+---------------------+
我试过了
update mytable set mydate = now() + interval 10 hour;
但这会将每个值更新为从现在起 10 小时。
最佳答案
你可以为此使用变量:
update mytable cross join
(select @i := 0) params
set mydate = mydate + interval 10 * (@i := @i + 1) hour;
编辑:
我注意到原始数据中有一个顺序。为此:
set @i = 0;
update mytable
set mydate = mydate + interval 10 * (@i := @i + 1) hour
order by id;
甚至:
update mytable
set mydate = mydate + interval 10 * (id - 1) hour
order by id;
这仅在 id
递增 1 并且没有间隔时有效。
关于mysql - 如何在 Mysql 上增加间隔日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38799803/
我是一名优秀的程序员,十分优秀!