【发布时间】:2017-03-06 00:33:43
【问题描述】:
存储内容和类别的表很少。内容和类别以多对多关系映射。
一个类别可以有很多内容。
一个内容可以包含在许多类别中。
因此,我创建了 content_cat_xref 表来映射这些表。
类别表 - id、名称等
内容表 - id、名称、type_code(read_it、play_it、prove_it、watch_it)
content_cat_xref - content_id、category_id 等
我想显示具有内容类型的类别和每种内容类型的内容计数,如下所示。
但我得到如下。
我的查询如下
select
ccx.category_id,
IF(count(c.id) > 0, "True", "False") as Sections_with_content,
(CASE WHEN (c.type_code = 'READ_IT') THEN count(c.id) ELSE 0 END) as "READ_IT",
(CASE WHEN (c.type_code = 'WATCH_IT') THEN count(c.id) ELSE 0 END) as "WATCH_IT",
(CASE WHEN (c.type_code = 'PLAY_IT') THEN count(c.id) ELSE 0 END) as "PLAY_IT",
(CASE WHEN (c.type_code = 'PROVE_IT') THEN count(c.id) ELSE 0 END) as "PROVE_IT",
count(c.id)
from content_cat_xref as ccx left outer join content as c
on ccx.content_id = c.id
group by ccx.category_id, c.type_code
如果有人有这种经验将有助于我解决问题。
【问题讨论】: