Laravel concat не работает

У меня проблема с Laravel CONCAT, он не объединяет поля БД. Когда я проверил возвращенные данные, он не имеет ФИО

public function getAllPlayers()
{
$data = Player::select(DB::raw('CONCAT(familyName," ",firstName) AS fullName'))
->orderBy('familyName', 'asc')
->join('teams', 'players.primaryClubId', '=', 'teams.clubId')
->select(['players.*', 'teams.teamName', 'teams.teamNickname', 'teams.teamCode'])
->get()
->unique() //remove duplicates
->groupBy(function($item, $key) { //group familyName that starts in same letter
return substr($item['familyName'], 0, 1);
})
->map(function ($subCollection) {
return $subCollection->chunk(4); // put your group size
});

return $data;
}

0

Решение

Вы переопределяете select с другим select, Чтобы добавить множественный выбор, вам нужно использовать addSelect метод.

public function getAllPlayers()
{
$data = Player::select(DB::raw('CONCAT(familyName," ",firstName) AS fullName'))
->orderBy('familyName', 'asc')
->join('teams', 'players.primaryClubId', '=', 'teams.clubId')
->addSelect(['players.*', 'teams.teamName', 'teams.teamNickname', 'teams.teamCode'])
->get()
->unique() //remove duplicates
->groupBy(function($item, $key) { //group familyName that starts in same letter
return substr($item['familyName'], 0, 1);
})
->map(function ($subCollection) {
return $subCollection->chunk(4); // put your group size
});

return $data;
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]