fix:修改了SQL查询

This commit is contained in:
fengyarnom 2025-05-15 16:46:26 +08:00
parent bcf7df31da
commit d35bfb0c18

View File

@ -47,7 +47,12 @@ func (dao *SensorDAO) GetAggregatedData(start, end time.Time, interval string) (
case "5min":
query = `
SELECT
DATE_FORMAT(timestamp, '%Y-%m-%dT%H:%i:%s') as ts,
DATE_FORMAT(
FROM_UNIXTIME(
FLOOR(UNIX_TIMESTAMP(timestamp)/(5*60))*(5*60)
),
'%Y-%m-%dT%H:%i:00'
) as ts,
ROUND(AVG(temperature)/10, 1) as avg_temp,
MAX(rainfall) - MIN(rainfall) as rainfall,
ROUND(AVG(humidity)/10, 1) as avg_humidity,
@ -60,7 +65,12 @@ func (dao *SensorDAO) GetAggregatedData(start, end time.Time, interval string) (
case "30min":
query = `
SELECT
DATE_FORMAT(timestamp, '%Y-%m-%dT%H:%i:%s') as ts,
DATE_FORMAT(
FROM_UNIXTIME(
FLOOR(UNIX_TIMESTAMP(timestamp)/(30*60))*(30*60)
),
'%Y-%m-%dT%H:%i:00'
) as ts,
ROUND(AVG(temperature)/10, 1) as avg_temp,
MAX(rainfall) - MIN(rainfall) as rainfall,
ROUND(AVG(humidity)/10, 1) as avg_humidity,
@ -73,7 +83,12 @@ func (dao *SensorDAO) GetAggregatedData(start, end time.Time, interval string) (
default: // 1hour
query = `
SELECT
DATE_FORMAT(timestamp, '%Y-%m-%dT%H:%i:%s') as ts,
DATE_FORMAT(
FROM_UNIXTIME(
FLOOR(UNIX_TIMESTAMP(timestamp)/3600)*3600
),
'%Y-%m-%dT%H:00:00'
) as ts,
ROUND(AVG(temperature)/10, 1) as avg_temp,
MAX(rainfall) - MIN(rainfall) as rainfall,
ROUND(AVG(humidity)/10, 1) as avg_humidity,