繁体   English   中英

如何计算一个表中不同行和列之间的timestampdiff?

[英]how to calculate timestampdiff between different rows and columns in one table?

我正在尝试在pause_time中的表统计信息和结果集的不同行中计算end_datetimestart_datetime之间的时差

像我这样的查询没有执行。

update statistic
set pause_time = TIMESTAMPDIFF(hour, a.start_datetime, b.end_datetime)
from statistic a
inner join statistic b on a.id = (b.id - 1)
order by a.id asc

我收到一个错误:

查看与您的MySQL服务器版本对应的手册,以便在第1行QMYSQL上使用“FROM统计数据INNER JOIN统计数据b ON b.id =(a.id - 1)ORDER BY a.id ASC”附近使用正确的语法。 我的表统计:

 <html> <head> <title></title> </head> <body> <div> id<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; &nbsp;| &nbsp; &nbsp;start_datetime<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; &nbsp; &nbsp;| &nbsp;&nbsp;end_datetime<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; &nbsp; &nbsp; |&nbsp; &nbsp; &nbsp;pause_time</div> <p> <span style="font-size:12px;">1 <span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; &nbsp; &nbsp;| &nbsp; &nbsp;2016-10-13T23:14:05<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp;&nbsp;|&nbsp; <strong><span style="color:#f00;">&nbsp;2016-10-14T07:03:02</span>&nbsp;<span class="Apple-tab-span" style="white-space:pre"> </span></strong>|&nbsp; &nbsp; &nbsp;&nbsp;</span></p> <p> <span style="font-size:12px;">2<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; &nbsp; &nbsp; | &nbsp; <span style="color:#f00;"><strong>&nbsp;2016-10-14T15:25:56&nbsp;</strong>&nbsp;</span>| &nbsp;&nbsp;2016-10-14T22:03:50<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp;|</span></p> <p> <span style="font-size:12px;">3 &nbsp; &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre"> </span>| &nbsp; &nbsp;2016-10-13T15:25:30<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; | &nbsp;&nbsp;2016-10-13T22:10:01 &nbsp;|</span></p> <p> <span style="font-size:12px;">4 &nbsp; &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre"> </span>| &nbsp; &nbsp;2016-10-13T01:09:11<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp; | &nbsp;&nbsp;2016-10-13T02:59:30<span class="Apple-tab-span" style="white-space:pre"> </span>&nbsp;|</span></p> <div> &nbsp;</div> </body> </html> 

您使用的语法是SQL server

请参阅MySQL的 - https://dev.mysql.com/doc/refman/5.7/en/update.html

尝试这个:

update statistic a
join   statistic b on a.id = (b.id - 1)
set a.pause_time = TIMESTAMPDIFF(hour, a.start_datetime, b.end_datetime)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM