我有一个结构如下的 MySQL 查询:
SELECT time(c.start_time),
time(c.end_time),
time(c.end_time) - time(c.start_time) as 'opening_hours'
FROM my_shop c;
开始和结束时间的数据分别为 1970-01-01 07:00:00 和 1970-01-01 19:00:00。
在我的本地机器上,这个查询返回:
| 07:00:00 | 19:00:00 | 12 |
但是在远程机器(生产)上它正在返回
| 07:00:00 | 19:00:00 | 120000 |
关于为什么会发生这种情况以及如何解决它的任何想法?
两组数据是相同的,据我所知,两个 MySQL 安装也是相同的。
任何帮助深表感谢。
更新:
MySQL 的版本似乎略有不同:5.0.27-community-nt 与 5.0.51b-community-nt。这很可能是原因。
djt 提出了一个很好的观点,即比尔的解决方案没有考虑分钟数。以及这个 djt 的解决方案并不是我所需要的。
所以我想这个问题已经演变成如何减去两次,包括分钟,这样:
1970-01-01 19:00:00 - 1970-01-01 07:00:00 = 12
1970-01-01 19:00:00 - 1970-01-01 07:30:00 = 11.5
1970-01-01 19:00:00 - 1970-01-01 07:45:00 = 11.25
等等