From 681cd42eda3b1099f13eefa585673a06f12de405 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sun, 6 Mar 2016 21:48:19 +0100 Subject: core: o Supporting aggregate levels of 'minute' and 'day' in addition to the existing 'hour'. --- src/DillerDao.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/DillerDao.js') diff --git a/src/DillerDao.js b/src/DillerDao.js index 7620541..a59adb8 100644 --- a/src/DillerDao.js +++ b/src/DillerDao.js @@ -192,13 +192,13 @@ function DillerDao(tx, as) { function aggregateValuesByPropertyId(propertyId, level, from, to) { var sql, args = [level, as.date(from), as.date(to), propertyId]; - if (level == 'hour') { + if (level == 'hour' || level == 'minute' || level == 'day') { // TODO: use correct table instead of querying raw table } else { throw 'Unsupported level: ' + level; } - sql = 'with g as (select * from generate_series($2::timestamp, $3::timestamp, (\'1 \' || $1)::interval) as times(ts)),\n' + + sql = 'with g as (select date_trunc($1, ts) as ts from generate_series($2::timestamp, $3::timestamp, (\'1 \' || $1)::interval) as times(ts)),\n' + 'v as (select\n' + ' date_trunc($1, timestamp) as ts,\n' + ' count(timestamp)::real as count,\n' + -- cgit v1.2.3