avg method

Future<double?> avg(
  1. String columnName
)

Get average value of a column

Implementation

Future<double?> avg(String columnName) async {
  try {
    final db = await database;
    final query = "SELECT AVG($columnName) as avg_value FROM $table";

    if (_whereConditions.isNotEmpty) {
      final whereClause = _whereConditions.join(" ");
      final fullQuery = "$query WHERE $whereClause";
      final result = await db.rawQuery(fullQuery, _bindings);
      return result.first['avg_value'] as double?;
    }

    final result = await db.rawQuery(query);
    return result.first['avg_value'] as double?;
  } catch (e) {
    throw DatabaseException('Failed to get average value for column $columnName: $e');
  }
}