Mysql
 sql >> Datenbank >  >> RDS >> Mysql

CONCAT-Spalten mit Laravel 5 eloquent

Sie müssen Ihre Abfrage in DB::raw einschließen :

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

Beachten Sie auch, dass sich Ihr Modell möglicherweise anders verhält, weil Sie Ihre Abfrage so durchführen, da diese Auswahl alle anderen Felder aus der Auswahlanweisung entfernt. Sie können also die anderen Felder aus Ihrem Modell nicht ohne eine neue Abfrage lesen. Verwenden Sie dies also NUR zum LESEN von Daten und nicht zum ÄNDERN von Daten.

Um es in eine schöne Liste zu schaffen, schlage ich vor, dass Sie Ihre Abfrage ändern 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.