a.id as "id" ,
a.tenant_id as "tenantId" ,
a.year as "year" ,
a.month as "month" ,
a.day as "day" ,
a.hour as "hour" ,
a.parent_scene_id as "parentSceneId" ,
a.parent_scene_name as "parentSceneName" ,
a.scene_id as "sceneId" ,
a.scene_name as "sceneName" ,
a.device_id as "deviceId" ,
a.device_name as "deviceName" ,
a.device_code as "deviceCode" ,
a.attribute_id as "attributeId" ,
a.attribute_name as "attributeName" ,
a.min_value as "minValue" ,
a.max_value as "maxValue" ,
a.avg_value as "avgValue" ,
a.sum_value as "sumValue" ,
a.latest_value as "latestValue" ,
a.collect_date as "collectDate" ,
a.date_create as "dateCreate" ,
a.create_by as "createBy" ,
a.date_update as "dateUpdate" ,
a.update_by as "updateBy"
SELECT
FROM sms_day_report a
WHERE a.id = #{id}
SELECT
FROM sms_day_report a
and a.tenant_id = #{tenantId}
and a.year = #{year}
and a.month = #{month}
and a.day = #{day}
and a.hour = #{hour}
and a.parent_scene_id = #{parentSceneId}
and a.scene_id = #{sceneId}
and a.device_id = #{deviceId}
and a.device_code = #{deviceCode}
and a.attribute_id = #{attributeId}
and a.collect_date = #{collectDate}
SELECT
distinct
a.tenant_id as "tenantId" ,
a.year as "year" ,
a.month as "month" ,
a.day as "day" ,
a.hour as "hour" ,
b.parent_scene_id as "parentSceneId",
c.SCENE_NAME as "parentSceneName"
FROM sms_day_report a
inner join sms_device_parm b on a.DEVICE_ID = b.DEVICE_ID and a.ATTRIBUTE_ID=b.ATTRIBUTE_ID and b.`STATUS`=1
inner join sms_scene c on b.PARENT_SCENE_ID=c.id
b.IS_REPORT=1
and a.tenant_id =
#{dayReport.tenantId}
and a.year = #{dayReport.year}
and a.month = #{dayReport.month}
and a.day = #{dayReport.day}
and b.parent_scene_id in
#{dramaId}
order by b.parent_scene_id,a.year,a.month,a.day,a.hour
SELECT tab.attributeName,tab.ATTRIBUTE_TYPE,min(tab.minValue) as "minValue",
max(tab.maxValue) as "maxValue",AVG(tab.avgValue)as "avgValue",
AVG(tab.sumValue)as "sumValue",AVG(tab.latestValue) as "latestValue"
from
(SELECT IFNULL(a.REMARK,b.`NAME`) AS "attributeName",
c.min_value as "minValue" ,c.max_value as "maxValue" ,c.avg_value as "avgValue" ,
c.sum_value as "sumValue" ,c.latest_value as "latestValue",
a.PARM_TYPE as ATTRIBUTE_TYPE
FROM sms_device_parm a
INNER JOIN sms_device_attribute b on a.ATTRIBUTE_ID=b.ID
INNER JOIN sms_day_report c on a.ATTRIBUTE_ID=c.ATTRIBUTE_ID and a.DEVICE_ID=c.DEVICE_ID
where
a.IS_REPORT=1 and a.`STATUS`=1
and a.DEVICE_ID in
#{dramaId.id}
and c.`YEAR`=#{report.year}
and c.`MONTH`=#{report.month}
and c.`DAY`=#{report.day}
and c.`HOUR`=#{report.hour}
and a.PARENT_SCENE_ID=#{report.parentSceneId}
ORDER BY a.SEQ
) as tab
group by tab.attributeName,tab.ATTRIBUTE_TYPE
select
tab.year,tab.month,tab.day,tab.hour,
sum(ifnull(intakeWaterUsage,0))as "intakeWaterUsage",
sum(ifnull(yieldWaterUsage,0))as "yieldWaterUsage",
sum(ifnull(powerUsage,0))as "powerUsage",
sum(ifnull(drugUsage,0))as "drugUsage"
from
(SELECT
c.year,c.month,c.day,c.hour,
case when a.PARM_TYPE=4 then
c.latest_value end as "intakeWaterUsage",
case when a.PARM_TYPE=3 then
c.latest_value end as "yieldWaterUsage",
case when a.PARM_TYPE=5 then
c.latest_value end as "powerUsage",
case when a.PARM_TYPE=6 then
c.latest_value end as "drugUsage"
FROM sms_device_parm a
INNER JOIN sms_device_attribute b on a.ATTRIBUTE_ID=b.ID
INNER JOIN sms_day_report c on a.ATTRIBUTE_ID=c.ATTRIBUTE_ID and a.DEVICE_ID=c.DEVICE_ID
where
a.DEVICE_ID in
#{dramaId.id}
and c.`YEAR`=#{report.year}
and c.`MONTH`=#{report.month}
and c.`DAY`=#{report.day}
and a.PARENT_SCENE_ID=#{report.parentSceneId}
and (a.PARM_TYPE =3 or a.PARM_TYPE =4 or a.PARM_TYPE =5 or a.PARM_TYPE =6) and a.`STATUS`=1) tab
group by tab.year,tab.month,tab.day,tab.HOUR
order by tab.year desc,tab.month desc,tab.day desc,tab.hour desc
SELECT
a.DEVICE_CODE as "deviceCode",
a.DEVICE_NAME as "deviceName",
a.min_value as "minValue" ,a.max_value as "maxValue" ,a.avg_value as "avgValue" ,
a.sum_value as "sumValue" ,a.latest_value as "latestValue",
a.COLLECT_DATE as "collectDate"
FROM sms_day_report a
inner join sms_device d on d.id = a.DEVICE_ID
inner join sms_device_parm b on a.DEVICE_ID = b.DEVICE_ID and a.ATTRIBUTE_ID=b.ATTRIBUTE_ID and b.`STATUS`=1
and b.PARM_TYPE = 13
and b.PARM_TYPE = 14
and a.tenant_id =
#{dayReport.tenantId}
and a.year = #{dayReport.year}
and a.month = #{dayReport.month}
and a.day = #{dayReport.day}
and a.DEVICE_ID in
#{dramaId.id}
order by a.DEVICE_ID,a.year,a.month,a.day,a.hour
select tab.deviceCode,tab.deviceName,tab.collectDate,
sum(tab.minPHValue) as minPHValue,sum(tab.maxPHValue) as maxPHValue,sum(tab.avgPHValue) as avgPHValue,sum(tab.sumPHValue) as sumPHValue,sum(tab.latestPHValue) as latestPHValue,
sum(tab.minQuValue) as minQuValue,sum(tab.maxQuValue) as maxQuValue,sum(tab.avgQuValue) as avgQuValue,sum(tab.sumQuValue) as sumQuValue,sum(tab.latestQuValue) as latestQuValue,
sum(tab.minCLValue) as minCLValue,sum(tab.maxCLValue) as maxCLValue,sum(tab.avgCLValue) as avgCLValue,sum(tab.sumCLValue) as sumCLValue,sum(tab.latestCLValue) as latestCLValue
from (
SELECT a.DEVICE_ID,a.id,a.DEVICE_CODE as "deviceCode", a.DEVICE_NAME as "deviceName",
case when b.PARM_TYPE=7 then a.min_value end as "minPHValue" ,
case when b.PARM_TYPE=7 then a.max_value end as "maxPHValue" ,
case when b.PARM_TYPE=7 then a.avg_value end as "avgPHValue" ,
case when b.PARM_TYPE=7 then a.sum_value end as "sumPHValue" ,
case when b.PARM_TYPE=7 then a.latest_value end as "latestPHValue",
case when b.PARM_TYPE=9 then a.min_value end as "minQuValue" ,
case when b.PARM_TYPE=9 then a.max_value end as "maxQuValue" ,
case when b.PARM_TYPE=9 then a.avg_value end as "avgQuValue" ,
case when b.PARM_TYPE=9 then a.sum_value end as "sumQuValue" ,
case when b.PARM_TYPE=9 then a.latest_value end as "latestQuValue",
case when b.PARM_TYPE=11 then a.min_value end as "minCLValue" ,
case when b.PARM_TYPE=11 then a.max_value end as "maxCLValue" ,
case when b.PARM_TYPE=11 then a.avg_value end as "avgCLValue" ,
case when b.PARM_TYPE=11 then a.sum_value end as "sumCLValue" ,
case when b.PARM_TYPE=11 then a.latest_value end as "latestCLValue",
a.COLLECT_DATE as "collectDate" ,
a.year,a.month,a.day,a.hour
FROM sms_day_report a
inner join sms_device d on d.id = a.DEVICE_ID
inner join sms_device_parm b on a.DEVICE_ID = b.DEVICE_ID and a.ATTRIBUTE_ID=b.ATTRIBUTE_ID and b.`STATUS`=1
and (b.PARM_TYPE = 7 or b.PARM_TYPE = 10 or b.PARM_TYPE = 11)
and a.tenant_id =
#{dayReport.tenantId}
and a.year = #{dayReport.year}
and a.month = #{dayReport.month}
and a.day = #{dayReport.day}
and a.DEVICE_ID in
#{dramaId.id}
) as tab
group by tab.DEVICE_ID,tab.year,tab.month,tab.day,tab.hour,tab.deviceCode,tab.deviceName,tab.collectDate
order by tab.DEVICE_ID,tab.year,tab.month,tab.day,tab.hour
select a.LATEST_VALUE as "latestValue"
from sms_day_report a
where a.ATTRIBUTE_ID= #{dayReport.attributeId} and a.DEVICE_ID=#{dayReport.deviceId}
and a.year = #{dayReport.year}
and a.month = #{dayReport.month}
and a.day = #{dayReport.day}
order by a.COLLECT_DATE DESC
limit 1