Level 1
I'm not sure if this is the best practice but this works :)
public function scopeCompanies($query) {
return $query->
leftJoin('users', 'company_id', '=', 'companies.id')->
select(
DB::raw('GROUP_CONCAT(username) AS Users'),
'companies.index AS Index',
'companies.name AS Company Name',
'companies.address AS Address')
->groupBy('companies.index')
->orderBy('Users','DESC')
->get();
}