gpt4 book ai didi

php - select records form tableA and tableB where tableA.id = tableB.id, records from tableA 一次

转载 作者:行者123 更新时间:2023-11-29 06:17:49 25 4
gpt4 key购买 nike

我在 Codeigniter 工作。我在 MySql 数据库“menus”和“menus_child”中有两个表。结构是:

table: menus

编号 |菜单名称
1 |产品

table: menus_child

child 编号 |编号 | child 的名字
1 | 1 |产品1
2 | 1 |产品2
3 | 1 |产品3

我想要实现的是,从“菜单”中选择“id,menu_name”,并从“menus_child”中选择“child_name”,其中 menus.id = menus_child.id。记住它的“id”在表“menus”中,而不是在表“menus_child”中的“child_id”

这是我正在做的:

$this->db->select('menu_name');    
$this->db->from('menus');
$this->db->select('child_name');
$this->db->from('menus_child');
$this->db->where('menus.id = menus_child.id');
$query = $this->db->get();
$data = $query->result();
return $data;



但是,此查询返回

        [0] => stdClass Object
(
[menu_name] => products
[child_name] => product1
)

[1] => stdClass Object
(
[menu_name] => products
[child_name] => product2
)

[2] => stdClass Object
(
[menu_name] => products
[child_name] => product3
)

但我希望它是这样的:

[0] => stdClass Object
(
[menu_name] => products
[child_name] => product1
[child_name] => product2
[child_name] => product3
)



我们将不胜感激任何形式的帮助。

最佳答案

$sql=$this->db->query(
"SELECT * from menus ");
$data=$sql->result_array();
foreach($data as $key=>$mainmenu){
$data[$key]['child']=$this->getChild($mainmenu['id']);
}
return $data;

function getChild($menu_id){
$sql=$this->db->query(
"SELECT * from menus_child where id='$menu_id'");
$data=$sql->result_array();
return $data;
}

关于php - select records form tableA and tableB where tableA.id = tableB.id, records from tableA 一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34835918/

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