gpt4 book ai didi

Laravel 中的 MySQL 子查询,如何连接查询并将第二个查询的结果作为新列添加到第一个查询?

转载 作者:行者123 更新时间:2023-11-29 20:15:42 24 4
gpt4 key购买 nike

我有两个表:

- PRODUCTS (having: ID, NAME, PRICE)
- LIKES (having: ID, PRODID, NAME)

我想查询第一个表,同时在子查询中计算(并作为新列返回)该产品的所有喜欢项。我如何组合以下查询?

$products = DB::table('PRODUCTS')
->get();

$likes = DB::table('LIKES')
->select(DB::raw('count(*) as total'))
->where('PRODID', '=', 'product id from first table')
->get();

如何使用 Laravel 查询实现此目的?谢谢!

最佳答案

这不是您特别要求的答案,但作为替代方案,使用 Eloquent 可以非常轻松地处理这个问题。

$products = Product::with('likes');
foreach ($products as $product) {
echo 'Number of likes: '.$product->likes->count();
}

关于Laravel 中的 MySQL 子查询,如何连接查询并将第二个查询的结果作为新列添加到第一个查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39792759/

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