executeAverageQuery method

Future<num?> executeAverageQuery({
  1. required String field,
  2. required AGConnectCloudDBQuery query,
  3. required AGConnectCloudDBZoneQueryPolicy policy,
})

You can invoke this method to query Cloud DB zone object data that meets specified conditions and return the average value of specified fields.

Comply with the following rules when invoking this method:

  • You can invoke this method to query the average value of specified fields only when Cloud DB zone is opened. Otherwise, the query will fail.
  • Supports the following data types:
    • int for Short, Integer, and Long.
    • double for Double, and Float.

Implementation

Future<num?> executeAverageQuery({
  required String field,
  required AGConnectCloudDBQuery query,
  required AGConnectCloudDBZoneQueryPolicy policy,
}) async {
  if (field.isEmpty) {
    throw FormatException('field cannot be an empty string.', field);
  }
  try {
    return await _methodChannel.invokeMethod<num?>(
      _MethodConstants.EXECUTE_AVERAGE_QUERY,
      <String, dynamic>{
        _KeyConstants.ZONE_ID: _id,
        _KeyConstants.FIELD: field,
        _KeyConstants.QUERY: query.query,
        _KeyConstants.POLICY_INDEX: policy.index,
      },
    );
  } catch (e) {
    throw AGConnectCloudDBException._from(e);
  }
}