计算其他表数据并使用select子查询在php laravel中的主表中显示

问题描述 投票:0回答:1

我有两个表作为类别和产品。我必须计算表格产品中的类似数据和表格类别中的显示计数。我在laravel中使用此查询来显示类别详细信息。

$data = CategoryModel::orderBy('id','ASC')->get();

在核心php中,我使用以下查询来显示表1中的计数数据。

SELECT tbl_category.*,(SELECT COUNT(*) FROM tbl_product
WHERE tbl_product.v_category = tbl_category.v_name) AS TOTAL FROM tbl_category

现在我想在laravel中实现上面的查询。我怎样才能做到这一点 ?

php mysql laravel eloquent
1个回答
0
投票

我需要更多细节,但我假设产品被映射到多个类别,因此会有一个名为Category的模型文件映射到表类别,并且会有Product.php模型文件映射到products表

你控制下面的片段会有所帮助

App\Product::withCount('categories')->get()

请确保您的Product.php(模型文件)中有以下内容

public function categories()
{
    return $this->hasMany('\App\Category');
}

请注意,与产品关联的类别的计数将作为categories_count返回到集合中

© www.soinside.com 2019 - 2024. All rights reserved.