mysql join查询,并统计数量
mysql的两个表,一个是”分类表category“:另一个是"产品表product“,其中的category字段对应“分类表category”的id想要只用一条sql语...
mysql的两个表,一个是”分类表category“:
另一个是"产品表product“,其中的category字段对应“分类表category”的id
想要只用一条sql语句,得到下面的结果:
在"产品表product“没有数据的情况下,我用”SELECT a.*,COUNT(b.`category`) AS product_num FROM (`pl_category` a) LEFT JOIN `pl_product` b ON b.`category` = a.`id` Group By b.`category` ORDER BY a.`id`“语句查询,得到,另外的两个分类却没有显示出来。 展开
另一个是"产品表product“,其中的category字段对应“分类表category”的id
想要只用一条sql语句,得到下面的结果:
在"产品表product“没有数据的情况下,我用”SELECT a.*,COUNT(b.`category`) AS product_num FROM (`pl_category` a) LEFT JOIN `pl_product` b ON b.`category` = a.`id` Group By b.`category` ORDER BY a.`id`“语句查询,得到,另外的两个分类却没有显示出来。 展开
4个回答
展开全部
1、打开终端窗口,登录mysql。mysql -uroot -p。
2、SHOW DATABASES;USE testdb;这个时候切换到相应的数据库。
3、SHOW TABLES;INSERT INTO branch VALUES(6, 'BB', NULL, NULL);SELECT * FROM branch;比如我们为branch这个表插入数据。
4、SELECT employee.emp_id, employee.first_name, branch.branch_nameFROM employee JOIN branch ON employee.emp_id = branch.mgr_id;这个时候进行一下数据的联合,用JOIN。
展开全部
用”SELECT a.*,COUNT(b.`category`) AS product_num FROM (`pl_category` a) LEFT JOIN `pl_product` b ON b.`category` = a.`id` Group By a.`id` ORDER BY a.`id`“
Group By不对,b表里是没有数据的,不能以b表中的category来Group By。
Group By不对,b表里是没有数据的,不能以b表中的category来Group By。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select a.*,count(b.category) as product_num from a left join b on a.id=b.category order by a.id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把group by后面的b.category改成a.id
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询