展开全部
创建表,数据:create table 文章32313133353236313431303231363533e78988e69d8331333365633837
(id int,
文章标题 varchar(20));
insert into 文章 values (1,'文章1');
insert into 文章 values (2,'文章2');
insert into 文章 values (3,'文章3');
insert into 文章 values (4,'文章4');
insert into 文章 values (5,'文章5');
insert into 文章 values (6,'文章6');
insert into 文章 values (7,'文章7');
insert into 文章 values (8,'文章8');
insert into 文章 values (9,'文章9');
insert into 文章 values (10,'文章10');
insert into 文章 values (11,'文章11');
insert into 文章 values (12,'文章12');
insert into 文章 values (13,'文章13');
create table 评论
(id int,
文章id int,
评论 varchar(50));
insert into 评论 values (1,1,'这是标题1的评论');
insert into 评论 values (2,1,'这是标题1的评论');
insert into 评论 values (3,3,'这是标题3的评论');
insert into 评论 values (4,3,'这是标题3的评论');
执行语句:SELECT
a.id,
a.文章标题,
sum(
CASE
WHEN a.id = b.文章id THEN
1
ELSE
0
END
) 评论数
FROM
文章 a
LEFT JOIN 评论 b ON a.id = b.文章id
GROUP BY
a.id,
a.文章标题
查询结果: