gpt4 book ai didi

php - mysql join 只返回第一行,而它应该是多行

转载 作者:行者123 更新时间:2023-11-29 10:45:56 26 4
gpt4 key购买 nike

我正在尝试从两个表(用户和元)检索信息。但是,我只得到第一行,而不是全部。

用户表如下所示

ID | Display Name | Email
1 | Test | test@test.com

元表看起来像这样

meta_id | user_id | meta_key | meta_value
123 | 1 | address | 123 somewhere
123 | 1 | city | Metropolis

这是我的查询

$query = $this->db->from('users as u');
$query = $this->db->join('meta as m', 'u.ID = m.user_id');
$query = $this->db->where('ID', $data['ID']);
$query = $this->db->get();

return $query->row_array();

但是我得到了用户表的所有内容,但只有元表的第一行。尝试获取元表中与 user_id = 1 匹配的所有行。

为了让它发挥作用,我缺少什么?

最佳答案

您想要检索查询的所有结果还是仅检索第一行?

$query = $this->db->from('users as u');
$query = $this->db->join('meta as m', 'u.ID = m.user_id');
$query = $this->db->where('ID', $data['ID']);
$query = $this->db->get();

仅获取一个结果使用:row_array() 返回单个结果行。如果您的查询有多于一行,则它仅返回第一行。结果以数组形式返回。

return $query->row_array();

获取结果数组使用:result_array()方法以纯数组形式返回查询结果

return $query->result_array();

关于php - mysql join 只返回第一行,而它应该是多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44573726/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com