Laravel 5.5 Eloquent获得超过1列的独特性

I have a table which is indexed by id and also has a column description.

I want to use this in a form with it populating a radio group.

My problem is if I try

$colours = Colours::where('manufacturer_id',"=",$man)->select('id','description')->orderBy('description')->groupBy('description')->get();

I get

SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'cl24-ids.colours.manufacturer_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by (SQL: select description, manufacturer_id from colours where manufacturer_id = 1 group by description)

Any ideas please or should I just use a non Eloquent solution?

 $colours = Colours::where('manufacturer_id',"=",$man)
                    ->select('id','description')->groupBy('description')->get();

The distinct method allows you to force the query to return distinct results:

$users = DB::table('users')->distinct()->get();

Get unique rows

$categories = Machine::distinct('category')->pluck('category','antoher');

You can get distinct data just pass column as array in get method with distinct.

$myusers = User::distinct()->get(['created_by']);