Mysql 使用左联接从多个表中获取计数
我使用以下查询从多个表中获取计数:-Mysql 使用左联接从多个表中获取计数,mysql,count,left-join,Mysql,Count,Left Join,我使用以下查询从多个表中获取计数:- SELECT b.sales_title, c.cat_name, count(b.sales_id) as cnt, count(e.comment_id) as coun FROM tb_sale_report a inner join tbl_sales b on a.sales_id=b.sales_id inner join tb_category c on c.cat_id=b.category_id
SELECT
b.sales_title,
c.cat_name,
count(b.sales_id) as cnt,
count(e.comment_id) as coun
FROM tb_sale_report a
inner join tbl_sales b on a.sales_id=b.sales_id
inner join tb_category c on c.cat_id=b.category_id
left join tb_comment e on b.sales_id=e.sales_id
GROUP BY b.sales_title
我正在努力实现这一目标
sales_title | cat_name | cnt | coun
--------------------------------------------------
Affiliate | Kids toys | 8 | 0
Date Check | Handbags | 26 | 1
Date Date | My Category | 4 | 1
Future Date | Handbags | 3 | 0
Giovanni | Kids toys | 4 | 1
但是我得到的不是错误的计数,而是列con
的值像这样错误
sales_title | cat_name | cnt | coun
---------------------------------------------
Affiliate | Kids toys | 8 | 0
Date Check | Handbags | 26 | 26
Date Date | My Category | 4 | 4
Future Date | Handbags | 3 | 0
Giovanni | Kids toys | 4 | 4
我如何编写查询以实现我的目标。需要帮助,我是编程新手。提前谢谢你,除非你告诉我们你的表结构/给出一个复制你的问题的小数据片段,否则很难判断。您的comments表似乎正在复制,以便执行到
tbl_sales
表的联接,因此计数中存在重复项
尝试将计数(不同的e.comment\u id)作为conu
以消除此问题