我有问题。我想在值改变时找到行值之间的时间差异。我的表中有以下类似的数据,例如:
------------------------------------
DateandTime | DCStatus
------------------------------------
2012-01-01 01:00:00 | Using
2012-01-02 02:00:00 | Using
2012-01-03 03:00:00 | Using
2012-01-04 04:00:00 | Charging
2012-01-05 05:00:00 | Charging
2012-01-06 06:00:00 | Using
2012-01-06 07:00:00 | Using
2012-01-06 08:00:00 | Using
2012-01-05 09:00:00 | Charging
2012-01-05 10:00:00 | Charging
2012-01-05 11:00:00 | Charging
------------------------------------
从这个给定的数据库中我如何计算平均充电时间和放电时间?我是SQL编程的新手。请帮我!!
答案 0 :(得分:1)
据我所知,您无法使用标准查询执行此操作。您有两种选择:
如果您没有特别强制在数据库中进行此计算,我建议使用后一种选择 - 编程语言通常更适合这些类型的计算,并且您的应用程序将更少依赖于MySQL作为数据库。
答案 1 :(得分:0)
select avg(Time(DateandTime)) from yourTable where DCStatus = 'Charging' or DCStatus = 'DisCharging' group by DCStatus;
我不确定它在MySQL中是否有效,我没有时间对其进行测试,但它应该可以工作。