FlinkSQL如何按周聚合数据

How to aggregate data group by week in FlinkSQL

如果我想按天汇总数据,sql:

select
DATE_FORMAT(ctime, 'yyyyMMdd'),
count(*) as num
from event
group by DATE_FORMAT(ctime, 'yyyyMMdd');

如何按周汇总数据?

您可以使用以下方式按周汇总:

SELECT date_format(ctime,'YYYYw'),
       count(*) AS num
FROM event
GROUP BY date_format(ctime,'YYYYw')

date_format 函数支持与 Java 的 SimpleDateFormat 兼容的任何格式字符串。