如何在Laravel中获得与其他销售交易计数相关的产品列表?

时间:2019-03-26 06:43:02

标签: laravel eloquent

我是Laravel的新手,正在从事一个小型电子商务项目。我需要在交易表中获取与交易计数相关的产品列表。以下是我的演示数据。

tb_product:

product_id    product_name
    1             A
    2             B  
    3             C  

tb_transaction:

transaction_id    product_id
    1                2
    2                1
    3                2
    4                2
    5                1
    6                3    

来自tb_transaction。我的销售清单如下

B = 3sales, A =2sales, C=1sale

我需要生成Laravel雄辩的结果,例如[{B...},{A...},{C...}](从最大值到最小值)。我曾尝试从谷歌,但没有运气。感谢您的指教,谢谢。

1 个答案:

答案 0 :(得分:1)

尝试以下查询,

DB::table('tb_product')
->select('tb_product.product_id', 'tb_product.product_name', DB::raw("count('tb_transaction.product_id') as salesCount"))
->join('tb_transaction', 'tb_transaction.product_id', 'tb_product.product_id')
->orderBy('salesCount', 'DESC')
->groupBy('tb_product.product_id', 'tb_product.product_name')
->get()