diff --git a/packages/api/src/time-series/latest-data.entity.ts b/packages/api/src/time-series/latest-data.entity.ts index 42e0a8f56..23470ec72 100644 --- a/packages/api/src/time-series/latest-data.entity.ts +++ b/packages/api/src/time-series/latest-data.entity.ts @@ -15,23 +15,21 @@ import { TimeSeries } from './time-series.entity'; @ViewEntity({ expression: (connection: Connection) => { - return ( - connection - .createQueryBuilder() - .select( - 'DISTINCT ON (metric, type, site_id, survey_point_id) time_series.id', - ) - .addSelect('metric') - .addSelect('timestamp') - .addSelect('value') - .addSelect('type', 'source') - .addSelect('site_id') - .addSelect('survey_point_id') - .from(TimeSeries, 'time_series') - // TODO limit to 30 days to make it faster - .innerJoin('sources', 'sources', 'sources.id = time_series.source_id') - .orderBy('metric, type, site_id, survey_point_id, timestamp', 'DESC') - ); + return connection + .createQueryBuilder() + .select( + 'DISTINCT ON (metric, type, site_id, survey_point_id) time_series.id', + ) + .addSelect('metric') + .addSelect('timestamp') + .addSelect('value') + .addSelect('type', 'source') + .addSelect('site_id') + .addSelect('survey_point_id') + .from(TimeSeries, 'time_series') + .where("timestamp > current_date - interval '7' day;") + .innerJoin('sources', 'sources', 'sources.id = time_series.source_id') + .orderBy('metric, type, site_id, survey_point_id, timestamp', 'DESC'); }, materialized: true, })