Mysql
 sql >> Database >  >> RDS >> Mysql

Colonne CONCAT con Laravel 5 eloquente

Devi racchiudere la tua query in DB::raw :

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

Inoltre, tieni presente che poiché stai facendo la tua query in questo modo, il tuo modello potrebbe comportarsi in modo diverso, poiché questa selezione rimuove tutti gli altri campi dall'istruzione select. Quindi non puoi leggere gli altri campi dal tuo modello senza una nuova query. Quindi usalo SOLO per la LETTURA dei dati e non per la MODIFICA dei dati.

Inoltre, per farne una bella lista, ti suggerisco di modificare la tua query in:

$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.