用一个sql块分别求日,周,月维度汇总,最终是用时间趋势图来呈现: 日维度是:返回时间参数的最近7天的数据,趋势图横轴展示, 每天的数据。 周维度是:返回时间参数的最近6周的数据,趋势图横轴展示, 用每周一展示(本周的汇总)数据。 月维度是:返回时间参数的最近13个月的数据,趋势图横轴展示, 每月的汇总数据 select part_dt, takeout_platform, sum(close_time), sum(stop_time) from ( select part_dt, store_id, takeout_platform, close_time, stop_time from ads_platform_store_day where 1=1 ${IF(frequency="1","AND part_dt >= '"+format(DATEDELTA(endDate,-7),'yyyyMMdd')+"' AND part_dt<= '"+format(endDate,'yyyyMMdd')+"'" , IF(frequency="2","AND part_dt >= '"+format(DATEDELTA(endDate,-42),'yyyyMMdd')+"' AND part_dt<= '"+format(endDate,'yyyyMMdd')+"'", IF(frequency="3","AND part_dt >= '"+format(YEARDELTA(endDate,-1),'yyyyMMdd')+"' AND part_dt<= '"+format(endDate,'yyyyMMdd')+"'" ,"")))} and store_id in ( '${store_id}') )a group by part_dt,takeout_platform frequency 等于1 表示日,等于2 表示周,等于3 表示月 SQL这样写,好像不对,算不出来对应周和月的汇总值, 请大神指教一下,怎么写? |