| | |
| | | <if test="orgCode != null and orgCode != ''">and org_code like concat(#{orgCode}, '%')</if> |
| | | </where> |
| | | </sql> |
| | | <sql id="statBeforeOilFreqCondition"> |
| | | <where> |
| | | and behavior = 1 |
| | | <if test="beforeStartTime != null and beforeStartTime != ''">and start_time >= #{beforeStartTime}</if> |
| | | <if test="beforeEndTime != null and beforeEndTime != ''">and start_time < #{beforeEndTime}</if> |
| | | <if test="orgCode != null and orgCode != ''">and org_code like concat(#{orgCode}, '%')</if> |
| | | </where> |
| | | </sql> |
| | | <sql id="statAfterOilFreqCondition"> |
| | | <where> |
| | | and behavior = 1 |
| | | <if test="afterStartTime != null and afterStartTime != ''">and start_time >= #{afterStartTime}</if> |
| | | <if test="afterEndTime != null and afterEndTime != ''">and start_time < #{afterEndTime}</if> |
| | | <if test="orgCode != null and orgCode != ''">and org_code like concat(#{orgCode}, '%')</if> |
| | | </where> |
| | | </sql> |
| | | <select id="statisTotal" parameterType="com.tievd.jyz.entity.vo.DataStatisReqVo" resultType="com.tievd.jyz.entity.vo.StatDataTableVo"> |
| | | select |
| | | *, |
| | |
| | | GROUP BY org_code |
| | | limit 10 |
| | | </select> |
| | | <select id="statisOilFreqCompare" resultType="java.util.Map" parameterType="com.tievd.jyz.entity.vo.DataStatisReqVo"> |
| | | select |
| | | l.licenseNum licenseNum, |
| | | ifnull(b.beforeOilCount, 0) beforeOilCount, |
| | | ifnull(a.afterOilCount, 0) afterOilCount, |
| | | ifnull(a.afterOilCount, 0) - ifnull(b.beforeOilCount, 0) diffOilCount, |
| | | case |
| | | when ifnull(b.beforeOilCount, 0) = 0 then null |
| | | else round((ifnull(a.afterOilCount, 0) - ifnull(b.beforeOilCount, 0)) * 100 / ifnull(b.beforeOilCount, 0), 2) |
| | | end diffRate |
| | | from ( |
| | | select license_num licenseNum from t_oil_record |
| | | <include refid="statBeforeOilFreqCondition"/> |
| | | union |
| | | select license_num licenseNum from t_oil_record |
| | | <include refid="statAfterOilFreqCondition"/> |
| | | ) l |
| | | left join ( |
| | | select license_num licenseNum, count(1) beforeOilCount |
| | | from t_oil_record |
| | | <include refid="statBeforeOilFreqCondition"/> |
| | | group by license_num |
| | | ) b on l.licenseNum = b.licenseNum |
| | | left join ( |
| | | select license_num licenseNum, count(1) afterOilCount |
| | | from t_oil_record |
| | | <include refid="statAfterOilFreqCondition"/> |
| | | group by license_num |
| | | ) a on l.licenseNum = a.licenseNum |
| | | order by afterOilCount desc, beforeOilCount desc, licenseNum asc |
| | | limit 200 |
| | | </select> |
| | | <select id="statFanByModel" resultType="com.tievd.jyz.entity.vo.StatDataTableVo" parameterType="com.tievd.jyz.entity.vo.DataStatisReqVo"> |
| | | select |
| | | count(if(behavior=1,1,null)) oilCount, |