mysql如何用前一天最后一天的值减去今天最后一天的值?

How can I subtract the value of the last date today from the value of the last date of the previous day in mysql?

如何用mysql前一天最后一天的值减去今天最后一天的值?

假设今天是 2022/05/27 然后

80 -20 = 60

datetime,value

2022/05/27 15:25:30 ,20

2022/05/27 11:20:40 ,34

2022/05/26 9:42:10,80

2022/05/26 5:10:36,150

您可能正在使用 MySQL 低于 8.0 的版本,遗憾的是缺少最新的功能。所以我在5.7写了代码,在workbench测试了。为了让事情更有趣,我冒昧地在你原来的 table.

之上添加了两行
insert test values('2022/05/25 15:10:36',200);
insert test values('2022/05/25 11:10:36',280);

select concat_ws(' minus ',t1.dt,t2.dt) as date_gap,
t1.`value`-t2.`value` as value_gap from
    (select date(`datetime`) dt,`value` from test where `datetime` in 
        (select max(`datetime`)mx from test group by date(`datetime`) ) 
    ) t1
 join
    (select date(`datetime`) dt,`value` from test where `datetime` in 
        (select max(`datetime`)mx from test group by date(`datetime`) ) 
    ) t2
on t1.dt = t2.dt - interval 1 day
;