根据时间戳按最近12周、按最近12个月分组统计
话不多说直接上硬核
下面展示一些 内联代码片
。
// 按周查询统计
$incomeObj = app::get('XXX')->model('XXX');
//重点是FROM_UNIXTIME的用法(%u是以周一为一周的开始,%U是以周日为一周的开始)
$sql = 'SELECT sum(money) as amount,FROM_UNIXTIME(t_end,\'%Y-%U\') as weeks FROM sdb_xxx WHERE '.$incomeObj->_pFilter($filter).' group by weeks';
$row = kernel::database()->select($sql);
// 按月查询统计
$incomeObj = app::get('XXX')->model('XXX');
//重点是FROM_UNIXTIME的用法(%u是以周一为一周的开始,%U是以周日为一周的开始)
$sql = 'SELECT sum(money) as amount,FROM_UNIXTIME(t_end,\'%Y-%m\') as months FROM sdb_xxx WHERE '.$incomeObj->_pFilter($filter).' group by months';
$row = kernel::database()->select($sql);
需要特别注意的是,取别名的时候要避免mysql的关键词