mysql从表中选择all但只更改一列的列名

时间:2017-03-06 17:56:02

标签: php mysql laravel

我需要选择一个包含id,name等的表。现在我想选择所有内容,只需将列名'name'更改为'user_name'即可。如何在不选择和声明所有内容的情况下执行此操作? 我试过这样的,但这不起作用。

return $query
->select(
  'user.*',
  'user.name as user_name'
)

1 个答案:

答案 0 :(得分:0)

您的问题从您的加入开始。因为您在没有别名的情况下加入,所以第二个会覆盖第一个。我给你一个示例查询,以显示如何为联接表添加别名,从而将名称替换为' name'从第二个表。示例代码:

$query = DB::table('users')
->leftjoin('users as child', 'users.id', '=', 'users.parent_id')
->select('users.*', 'child.name as child_name')
->get();