如何选择表格的某些列?

Posted

技术标签:

【中文标题】如何选择表格的某些列?【英文标题】:How can I select some columns of table? 【发布时间】:2017-03-21 21:38:08 【问题描述】:

这是我的代码:

$arr = Users::all()->toArray();

它返回一个包含所有表列的数组。但我不需要所有列。我只需要返回这些列:'id', 'name', 'email', 'age'。我已经对此进行了搜索,并发现了这一点:(使用pluck()函数)

$arr = Users::pluck('id', 'name', 'email', 'age')->toArray();

但它没有返回预期的结果。它返回:

array:7 [▼
  "John" => 1
  "Peter" => 2
  "Jack" => 3
  "Ali" => 4
  "Teresco" => 5
  "Mark" => 6
  "Barman" => 7
]

如您所见,没有 emailage 列。我该如何解决?

【问题讨论】:

你可以这样试试吗:$arr = Users::get(array('columns'....)); @S.I.是的,它有效..我测试过..谢谢 【参考方案1】:

试试这个:

Users::with(array('user'=>function($query)
        $query->select('id','username');
    ))->get();

它只会从其他表中选择 id 和 username。我希望这对其他人有帮助。

【讨论】:

toArray() 在哪里? @S.I.哈..你在搜索方面很有技巧:-P【参考方案2】:

你可以使用select这样的方法来做到这一点,

Users::select('id', 'name', 'email', 'age')
        ->get()
        ->toArray();

【讨论】:

【参考方案3】:

您可以像这样收集get() 中的列数组:

$arr = Users::get(array('id', 'name', 'email', 'age'))->toArray();

【讨论】:

以上是关于如何选择表格的某些列?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 HTML 列表框和 SQL 代码显示表格中的某些列?

如何使用 jQuery 选择表格列

HQL:如何选择某些列不同的所有实体?

如何根据 Oracle 表格 6i 中的某些条件在两个 LOV 之间进行选择

LINQ 如何在一对多连接中指定选择某些列

如何选择表格中除一列以外的所有列?