我有这个查询可以提取可用于某些分析的数据:
SELECT distinct egauge_analyze_2.dataid,
date_trunc('hour', egauge_analyze_2.timestamp_localtime)::time AS HOUR,
avg(egauge_analyze_2.use) AS USE
FROM dev.egauge_analyze_2
WHERE egauge_analyze_2.timestamp_localtime BETWEEN
'2012-07-16 00:00:00' AND '2012-08-17 23:59:59'
AND egauge_analyze_2.use IS NOT NULL
-- AND use > 0
GROUP BY 1,2
ORDER BY 1,2
当我将它与上述(按原样)一起使用时,它会为我提供良好的数据并随时抛出任何具有空值的 dataids(及其所有数据),当我添加额外的 use > 0 约束时,它会停止抛出 dataids将为空值。
数据由 dataids(唯一设备的值)、时间戳和 USE(当时该设备的功耗)组成 - 我正在尝试获取设备的季节性配置文件,但丢弃给出 null 的整个设备或错误(负)数据。
我希望它为 null 或 <= 0 的任何使用值丢弃所有 dataids(及其所有数据)。想法?