我有一个使用Spark SQL的SQL查询。
+----------+--------+------+---------------+--------+
| col1| | col1 |col3 | col4 | date_id|
+----------+--------+------+---------------+--------+
|eVA3Nh | 16.9314| 72| 8b01bfffff|20191201|
|loCMK | 12.9988| 72| 8b29dfffff|20191202|
|7G0HL |718.8329| 144| 8b01bfffff|20191203|
|loCMK | 12.9988| 72| 8b29dfffff|20191204|
|7G0HL |718.8329| 144| 8b01bfffff|20191205|
|loCMK | 12.9988| 72| 8b29dfffff|20191206|
|loCMK | 12.9988| 72| 8b29dfffff|20191207|
|eVA3N | 16.9314| 72| 8b01bfffff|20191209|
|7G0HL |718.8329| 144| 8b01bfffff|20191212|
|7G0HL |718.8329| 144| 8b01bfffff|20191217|
|7G0HL |718.8329| 144| 8b01bfffff|20191219|
+----------+--------+------+---------------+--------+
我希望连续4天基于col1和col4的count(1)/ 4个值
当我收到输出信息时,我也想连续四天总结一下,请您多多包涵。
select a.date_id,
a.col4,
a.col1,
count(1)/7
from {0} a
right join ({0}) f ON
a.col4 = f.col4 and a.col1=f.col1
and to_date(f.date_id, "yyyyMMdd") between date_sub(to_date(a.date_id, "yyyyMMdd"), 3)
and to_date(a.date_id, "yyyyMMdd")
group by 1,2,3
order by 1
这要计算4天的滚动时间,我需要计算4天的输出滚动时间,我如何将表加入为