Mysql
 sql >> Base de données >  >> RDS >> Mysql

Colonnes CONCAT avec Laravel 5 éloquent

Vous devez envelopper votre requête dans DB::raw :

$comp = Component::select(DB::raw("CONCAT('name','id') AS ID"))->get()

Notez également que, comme vous effectuez votre requête de cette manière, votre modèle peut se comporter différemment, car cette sélection supprime tous les autres champs de l'instruction select. Vous ne pouvez donc pas lire les autres champs de votre modèle sans une nouvelle requête. Donc, utilisez-le UNIQUEMENT pour LIRE des données et non pour MODIFIER des données.

Aussi, pour en faire une belle liste, je vous suggère de modifier votre requête en :

$comp = Component::select(DB::raw("CONCAT('name','id') AS display_name"),'id')->get()->pluck('display_name','id');
// dump output to see how it looks.
dd($comp);// array key should be the arrray index, the value the concatted value.