使用Laravel Eloquent在MySQL列别名中放置空格

sam*_*les 2 php mysql sql laravel eloquent

我正在尝试使用Eloquent查询数据库并将结果导出到电子表格中。我当前的查询很好,并且该过程有效:

$clients = Client::
        select("ref as id", "title as salutation", "firstname", "surname as lastname", "tel as phone", "alttel as mobile", "email", "address1 as addressline1", "address2 as addressline2", "address3 as addressline3", "address4 as addressline4", "postcode as postalcode", "status")
        ->get();
Run Code Online (Sandbox Code Playgroud)

我想将字段名称作为带空格的别名。我以为我可以做以下事情之一:

"firstname as first name"
"firstname as 'first name'"
"firstname as `first name`"
'firstname as "first name"'
Run Code Online (Sandbox Code Playgroud)

或类似的东西。但是这些都不起作用。列名只是像一样返回'first。我在网上其他地方看到过一些东西,暗示MySQL应该可以实现这一点-这是一个特别的口才问题吗?

我还有其他方法需要这样做吗?

非常感谢

sam*_*les 5

我通过使用解决了此问题DB::raw。这是其他人需要知道的代码:

$clients = Client::
  ->select(DB::raw("ref as id, title as Salutation, firstname as 'First Name', surname as 'Last Name', tel as Phone, alttel as Mobile, email as Email, address1 as 'Address Line 1', address2 as 'Address Line 2', address3 as 'Address Line 3', address4 as 'Address Line 4', postcode as 'Postal Code', Status"))
  ->get();
Run Code Online (Sandbox Code Playgroud)

这将返回别名,并在其中带有空格。