How to concatenate columns with Laravel 4 Eloquent?

后端 未结 4 1476
长情又很酷
长情又很酷 2021-01-30 13:16

I have a table called tenantdetails which contains

Tenant_Id | First_Name | Last_Name | ........

and I want to retrieve Firs

相关标签:
4条回答
  • 2021-01-30 13:38
    Tenant::select('Tenant_Id', DB::raw('CONCAT(First_Name, " ", Last_Name) AS full_name'))
        ->orderBy('First_Name')
        ->lists('full_name', 'Tenant_Id');
    
    0 讨论(0)
  • 2021-01-30 13:54

    lists() method used to select column from selected result. So first contact first name and last name and give this column with new alias name in select statement

     $tenants = Tenant::orderBy('First_Name')->select(DB::row('CONCAT(`First_Name`," ",`Last_Name`) as name'),'Tenant_Id')->lists('name', 'id');
    

    then you can select this alias in lists() method

    0 讨论(0)
  • 2021-01-30 14:02

    An easy way is to use selectRaw. It was implemented by Tailor in Jan 30, 2014

    Source

    Tenant::selectRaw('CONCAT(First_Name, " ", Last_Name) as TenantFullName, id')->orderBy('First_Name')->lists('TenantFullName', 'id'))
    
    0 讨论(0)
  • 2021-01-30 14:02

    You should use the DB::raw() to concat those of field

    Tenant::select(
              'Tenant_Id',
              DB::raw('CONCAT(First_Name,"-",Last_Name) as full_name')
    
            )
           ->orderBy('First_Name')
           ->lists('full_name', 'Tenant_Id');
    
    0 讨论(0)
提交回复
热议问题