我知道,它应该很简单,但我似乎无法找到解决方案或创建解决方案。
我想做的就是计算日期之间的差异 所以
5/2和5/01 = 4
5/1和4/30 = 5
等
这是我到目前为止所得到的,但我想知道是否因为我的某些行中没有一个值可以搞砸了......
SELECT g1.customer_count, (g2.customer_count - g1.customer_count) as DiffDaily
from trux_customer_site_service_counts_max_df g1
inner join trux_customer_site_service_counts_max_df g2
on g2.Row_Number = g1.Row_Number +1
where g1.customer_count is not null
答案 0 :(得分:2)
您应该进行内部联接,如下所示:
SELECT
A.DATE_OF_DATA `DD-1`,
DATE(B.DATE_OF_DATA) DD,
(B.CUSTOMER_COUNT - A.CUSTOMER_COUNT) CUSTOMER_COUNT_DIFF
FROM
YOUR_TABLE A INNER JOIN YOUR_TABLE B
ON DATE(A.DATE_OF_DATA)=DATE(B.DATE_OF_DATA - INTERVAL 1 DAY);
答案 1 :(得分:0)
感谢Ankit让我顺道而行。因为我在Domo MySQL工作,你必须做一些不同的事情
SELECT
trux_customer_site_service_counts_max_df.*
, @rownumber :=@rownumber +1 as RowNumber
from trux_customer_site_service_counts_max_df,
(select @rownumber :=0) as t
where customer_count is not null
第2步
SELECT
g1.*,
(g2.customer_count - g1.customer_count) as DiffDaily
from customercount_no_nulls g1
inner join customercount_no_nulls g2 on g2.RowNumber = g1.RowNumber +1