当前位置: 首页 > 知识库问答 >
问题:

如何选择表中的某些列?

蔚学真
2023-03-14

这是我的密码:

$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
]

如您所见,没有电子邮件年龄列。我怎样才能修好它?

共有3个答案

蒋昊天
2023-03-14

试试这个:

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

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

邢雨华
2023-03-14

您可以在get()中收集列数组,如下所示:

$arr = Users::get(array('id', 'name', 'email', 'age'))->toArray();
武琛
2023-03-14

你可以用这样的选择方法,

Users::select('id', 'name', 'email', 'age')
        ->get()
        ->toArray();
 类似资料:
  • 使用简化了Hibernate ORM映射。 所有的指南都解释了如何编写不同的查询,但并不清楚如何只选择某些属性。 如果我不需要整个对象,而是需要数据库中所有人员的? 是否可以使用仅选择某些属性?

  • 我想要的是:热切地加载一个关系并指定列(而不是加载关系中的列)。我肯定这是可能的,但我就是不明白... 希望得到你的帮助。

  • 我正在读取一个CSV文件,其中包含有关山丘的数据。我可以从文件中读取数据,并将列标题与6个字段相关联。当前我的输出打印如下: 但我试图获得如下输出: 因此,从技术上讲,我试图实现的是,从我的集合中选择3个值,它们实际上在地图中,并且只打印出名称和高度。 我的当前代码是: 我认为我必须使用另一个for循环,并从集合中选择3个值,然后在最后的print语句中使用“.getName”和“.getHeig

  • 给定以下标记: 如何在。分隔符后选择类。first和。second?我尝试了以下几点: 然而,这似乎并不奏效。我以为这是这样的,从左到右: 既然它不能工作,我想我误解了其中一个选择器的功能。感谢任何帮助(或这方面的替代方案)。 PS: 标记来自外部源。虽然我可以在技术上用JS添加一个类,但如果可能的话,我更倾向于不添加。我也尝试过使用“:not”选择器,但我也没有得到它的工作。 谢谢 编辑: 在屏

  • 我有3个表,需要按以下方式提取记录 只选择Table_A中常见的记录,忽略Table_B和Table_C中不常见的记录,最终结果将不会重复。 尝试了方法1:将Table_A与Table_B内部连接,然后将Table_A与Table_C分离,最后进行了联合。 但我还是拿到了复制品。

  • 本文向大家介绍如何在MySQL中选择以某些数字开头的记录?,包括了如何在MySQL中选择以某些数字开头的记录?的使用技巧和注意事项,需要的朋友参考一下 选择以某些数字开头的记录的最佳解决方案是使用MySQL LIKE运算符。让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 以下是查询以选择在MySQL中以某些数字开头的记录的查询