gpt4 book ai didi

php - 从多个表中获取对象的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-29 22:01:10 25 4
gpt4 key购买 nike

假设我有以下 2 个表:

表 1:用户用户 ID INT名字 VARCHAR

表 2:项目用户 ID INTitem_title VARCHAR

选择数据的最佳方法是什么,最终得到的数据如下:

$user[0]['user_id']=1;
$user[0]['first_name']='Dave';
$user[0]['items'][0]['item_title']='car';
$user[0]['items'][1]['item_title']='house';
$user[0]['items'][2]['item_title']='horse';
$user[1]['user_id']=2;
$user[1]['first_name']='Steve';
$user[1]['items'][0]['item_title']='bike';
$user[1]['items'][1]['item_title']='kite';

我知道如何在循环中通过多个查询获取数据,但这是不好的做法。我还知道我可以通过 JOIN 获取所有行,然后循环遍历数据以像上面那样对其进行建模。但是最好的方法是什么?

作为旁注问题...这是您使用 ORM 的目的吗?

最佳答案

不确定您是否正在寻找基于 PHP 的解决方案,但您可以将 GROUP_CONCAT()JOIN 一起使用,如下所示。

select u.user_id,u.first_name, xx.itemlist
from users u join (
select user_id,
group_concat(item_title) as itemlist
from items
group by user_id) xx on u.user_id = xx.user_id;

关于php - 从多个表中获取对象的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32630669/

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