gpt4 book ai didi

php - 无法从 laravel eloquent 中的连接查询的第二个表中获取数据

转载 作者:行者123 更新时间:2023-11-29 06:48:34 24 4
gpt4 key购买 nike

我试图使用左连接(在同一个表上)获取类别列表以获取父类别。

查询看起来像

SELECT categories.`cat_id`, categories.`cat_name`, categories.`cat_desc`, categories.`parent_id`, categories.`created_at`,cat2.cat_name FROM `categories` JOIN categories cat2 ON categories.parent_id = cat2.cat_id

所以我在 Laravel eloquent 上写了

$categoryModel::select('categories.cat_id', 'categories.cat_name', 'categories.cat_desc', 'categories.parent_id', 'categories.created_at','cat2.cat_name')
->leftJoin('categories AS cat2','categories.parent_id', '=' , 'cat2.cat_id')
->get();

不幸的是,结果仅包含第一个表列

[{"cat_id":1,"cat_name":"相机","cat_desc":null,"parent_id":3,"created_at":null},{"cat_id":2,"cat_name ":"相机","cat_desc":null,"parent_id":3,"created_at":null},{"cat_id":3,"cat_name":null,"cat_desc":null,"parent_id":null, "created_at":null},{"cat_id":4,"cat_name":null,"cat_desc":null,"parent_id":null,"created_at":null},{"cat_id":5,"cat_name": "CCTV","cat_desc":null,"parent_id":4,"created_at":null},{"cat_id":6,"cat_name":"CCTV","cat_desc":null,"parent_id":4, "created_at":null}]

提前致谢。 :)

最佳答案

这里两个表列具有相同的名称,因此您需要为第二个表的列使用别名,请在查询中进行以下更改,例如 'cat2.cat_name as c_name'

$categoryModel::select('categories.cat_id', 'categories.cat_name', 'categories.cat_desc', 'categories.parent_id', 'categories.created_at','cat2.cat_name as c_name' )
->leftJoin('categories AS cat2','categories.parent_id', '=' , 'cat2.cat_id')
->get();

关于php - 无法从 laravel eloquent 中的连接查询的第二个表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48415629/

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