public function numericAggregate($function, $columns = ['*'])
{
$result = $this->aggregate($function, $columns);
if (!$result) {
return 0;
}
if (is_int($result) || is_float($result)) {
return $result;
}
if (strpos((string) $result, '.') === false) {
return (int) $result;
}
return (double) $result;
}