先记录一部分,后面慢慢的补充,方便自己以后查看,同时也方便大家一起学习
/*查询总和,并且如果有空值则赋值为0,同时保留两位小数,根据时间分组,展示全年*/
SELECT Convert((IFNUll(sum(value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `data` ${ew.customSqlSegment}(备注一下,这个是接收条件的,相信应该是看的懂的) GROUP BY DATE_FORMAT(create_date,'%Y-%m') ORDER BY create_date ASC
/*查询总和,并且如果有空值则赋值为0,同时保留两位小数,根据时间分组,展示本月*/
SELECT Convert((IFNUll(sum(value),'0')),DECIMAL(10,2)) 'value',create_date 'createDate' FROM `data` ${ew.customSqlSegment} GROUP BY DATE_FORMAT(create_date,'%Y-%m-%d') ORDER BY create_date ASC
/*查询平均值,并且如果有空值则赋值为0,同时保留两位小数,根据时间分组,展示本月*/
select Convert((IFNULL(AVG(TP),'0')),DECIMAL(10,2)) 'value',create_date,loction_type from prot_data ${ew.customSqlSegment} group BY DATE_FORMAT(create_date,'%Y-%m-%d') ORDER BY create_date ASC
/*mybatis和mybatisplus中queryWrapper有select方法可以在构建条件的时候拼接SQL语句*/
dataQueryWrapper.select( "IFNULL(SUM(water),0) water,IFNULL(SUM(gas),0) gas" + ",IFNULL(SUM(electricity),0) electricity" + ",IFNULL(SUM(feed),0) feed " );