2017-05-23 1 views
0

Laravel CONCAT에 문제가 있습니다. DB 필드를 연결하지 않습니다. 내가 반환 된 데이터를 선택하면 그것은 더 fullName의Laravel concat not working

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; 
} 

답변

1

당신은 다른 selectselect을 무시하지 않습니다 있습니다. 여러 항목을 추가하려면 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

고맙습니다 @PankitGami your solution works! – PenAndPapers