假设我有一个包含以下数据的表:
day1 item1 30 day1 item2 25 day1 item3 27 day2 item1 30 day2 item2 30 day2 item3 20 … dayN item1 20
我将如何构造一个查询,该查询可以为我提供每个项目每天的变化率。
day1 item1 rateOfChange:0 day1 item2 rateOfChange:-1 day1 item3 rateOfChange:5 day2 item1 rateOfChange:0 day2 item2 rateOfChange:2
我的初始想法(不必太了解sql)将遍历每一天,并有一个子查询来检查每个项目的前一天,有什么区别吗?
谢谢
如果您的表被称为带有日期,项目和值整数列的数据表,则可能会这样做
SELECT t1.day, t1.item, (t2.value - t1.value) as rate FROM datatable t1 INNER JOIN datatable t2 ON t1.item = t2.item AND t1.day + 1 = t2.day