конечно.это очевидно.функция sum()
возвращает сумму выбранного столбца.одно значение (не набор значений)
first()
предназначено для коллекций, чтобы получить первый элемент из коллекции.
Так как функция sum возвращает сумму значений столбцов(Одно значение, а не коллекция), вы не можете вызвать функцию first()
для него.
И самое главное Вам не нужно .
NOTE
Если вы хотите получить и 'player', и 'sum', вы можете выполнить два запроса и связать эти два результата вместе.
Возможнорешение.
$player = DB::table('players')
->join('stats', 'players.username', '=', 'stats.player')
->first();
$player->sum = DB::table('players')
->join('stats', 'players.username', '=', 'stats.player')
->sum('stats.winpot');
теперь в извлеченном 'player' есть атрибут как 'sum'.Вы можете получить к нему доступ как $player->sum