=== modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/AggregationType.java' --- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/AggregationType.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/AggregationType.java 2014-03-31 08:21:01 +0000 @@ -33,5 +33,5 @@ */ public enum AggregationType { - SUM, AVERAGE_INT, AVERAGE_INT_DISAGGREGATION, AVERAGE_BOOL, COUNT + SUM, AVERAGE_INT, AVERAGE_INT_DISAGGREGATION, AVERAGE_BOOL, COUNT, STDDEV, VARIANCE } === modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/data/JdbcAnalyticsManager.java' --- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/data/JdbcAnalyticsManager.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/data/JdbcAnalyticsManager.java 2014-03-31 08:21:01 +0000 @@ -32,6 +32,8 @@ import static org.hisp.dhis.analytics.AggregationType.AVERAGE_INT; import static org.hisp.dhis.analytics.AggregationType.AVERAGE_INT_DISAGGREGATION; import static org.hisp.dhis.analytics.AggregationType.COUNT; +import static org.hisp.dhis.analytics.AggregationType.STDDEV; +import static org.hisp.dhis.analytics.AggregationType.VARIANCE; import static org.hisp.dhis.analytics.DataQueryParams.VALUE_ID; import static org.hisp.dhis.analytics.MeasureFilter.EQ; import static org.hisp.dhis.analytics.MeasureFilter.GE; @@ -201,6 +203,14 @@ { sql += "count(value)"; } + else if ( params.isAggregationType( STDDEV ) ) + { + sql += "stddev(value)"; + } + else if ( params.isAggregationType( VARIANCE ) ) + { + sql += "variance(value)"; + } else // SUM, AVERAGE_DISAGGREGATION and undefined //TODO { sql += "sum(value)";