fix: 修正ONLY_FULL_GROUP_BY 模式错误
This commit is contained in:
parent
ebf811f981
commit
0323f18c9a
@ -47,7 +47,7 @@ func (dao *SensorDAO) GetAggregatedData(start, end time.Time, interval string) (
|
|||||||
case "5min":
|
case "5min":
|
||||||
query = `
|
query = `
|
||||||
SELECT
|
SELECT
|
||||||
DATE_FORMAT(timestamp, '%Y-%m-%d %H:%i:00') as ts,
|
MIN(timestamp) as ts,
|
||||||
ROUND(AVG(temperature)/10, 1) as avg_temp,
|
ROUND(AVG(temperature)/10, 1) as avg_temp,
|
||||||
MAX(rainfall) - MIN(rainfall) as rainfall,
|
MAX(rainfall) - MIN(rainfall) as rainfall,
|
||||||
ROUND(AVG(humidity)/10, 1) as avg_humidity,
|
ROUND(AVG(humidity)/10, 1) as avg_humidity,
|
||||||
@ -60,7 +60,7 @@ func (dao *SensorDAO) GetAggregatedData(start, end time.Time, interval string) (
|
|||||||
case "30min":
|
case "30min":
|
||||||
query = `
|
query = `
|
||||||
SELECT
|
SELECT
|
||||||
DATE_FORMAT(timestamp, '%Y-%m-%d %H:%i:00') as ts,
|
MIN(timestamp) as ts,
|
||||||
ROUND(AVG(temperature)/10, 1) as avg_temp,
|
ROUND(AVG(temperature)/10, 1) as avg_temp,
|
||||||
MAX(rainfall) - MIN(rainfall) as rainfall,
|
MAX(rainfall) - MIN(rainfall) as rainfall,
|
||||||
ROUND(AVG(humidity)/10, 1) as avg_humidity,
|
ROUND(AVG(humidity)/10, 1) as avg_humidity,
|
||||||
@ -73,14 +73,14 @@ func (dao *SensorDAO) GetAggregatedData(start, end time.Time, interval string) (
|
|||||||
default: // 1hour
|
default: // 1hour
|
||||||
query = `
|
query = `
|
||||||
SELECT
|
SELECT
|
||||||
DATE_FORMAT(timestamp, '%Y-%m-%d %H:00:00') as ts,
|
MIN(timestamp) as ts,
|
||||||
ROUND(AVG(temperature)/10, 1) as avg_temp,
|
ROUND(AVG(temperature)/10, 1) as avg_temp,
|
||||||
MAX(rainfall) - MIN(rainfall) as rainfall,
|
MAX(rainfall) - MIN(rainfall) as rainfall,
|
||||||
ROUND(AVG(humidity)/10, 1) as avg_humidity,
|
ROUND(AVG(humidity)/10, 1) as avg_humidity,
|
||||||
ROUND(AVG(wind_speed)/10, 1) as avg_wind_speed
|
ROUND(AVG(wind_speed)/10, 1) as avg_wind_speed
|
||||||
FROM sensor_data
|
FROM sensor_data
|
||||||
WHERE timestamp BETWEEN ? AND ?
|
WHERE timestamp BETWEEN ? AND ?
|
||||||
GROUP BY DATE_FORMAT(timestamp, '%Y-%m-%d %H')
|
GROUP BY FLOOR(UNIX_TIMESTAMP(timestamp)/3600)
|
||||||
ORDER BY ts DESC
|
ORDER BY ts DESC
|
||||||
`
|
`
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user