gpt4 book ai didi

php - 加入多对一

转载 作者:行者123 更新时间:2023-11-29 03:27:07 25 4
gpt4 key购买 nike

在 Codeigniter 中,我尝试用一​​对多关系连接两个表。我想从我的表 housetype 中获得一个结果,并从其他表 housetype_member 中获得它的所有值/成员:

$this->db->select('*');
$this->db->join('housetype_member', 'housetype_member.housetype_id = housetype.PkId', 'left');
$result = $this->db->get_where('housetype', array('PkId' => $id));

return $result->result();

到目前为止我得到这样的结果:

array (size=2)
0 =>
object(stdClass)[28]
public 'PkID' => string '4' (length=1)
public 'Name' => string 'Classic' (length=7)
public 'image' => string '1449063250.jpg' (length=14)
1 =>
object(stdClass)[30]
public 'PkID' => string '4' (length=1)
public 'Name' => string 'Classic' (length=7)
public 'image' => string '1449063288.gif' (length=14)

前两个对象值(PkID、名称)来自第一个表,最后一个(图像)来自第二个左表。一切都很好,但是当我只需要一个 housetype 对象时,我得到了一个包含两个元素的数组。

有没有办法写上面的代码,让我返回的对象看起来像这样:

object(stdClass)[28]
public 'PkID' => string '4' (length=1)
public 'Name' => string 'Classic' (length=7)
public 'image' =>
array (size=2)
0 => string '1449063250.jpg' (length=14)
1 => string '1449063288.gif' (length=14)

我需要第一个表中的一个结果,我想从第二个表中加入它的所有成员。

可以用 Codeigniters active record 来完成吗,完全可以吗?

最佳答案

在您的查询中添加 group_by() 子句。

$this->db->group_by('housetype.PkId');

关于php - 加入多对一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34614352/

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