问题描述
希望你做得好,我有两个表,一个是 module 和 element 模块包含元素,所以我有一个外键 moduleID在元素里面,我想要做的是显示模块的ID和该模块中元素的数量,这里我做了:
'X'
但它只显示包含元素的模块,那些没有任何元素的模块呢,我真的希望我也能打印它们并显示它们的元素计数0。
模块表的列: 身份证(P) |模块名称 |类ID |上传目录
元素表的列: 身份证(P) |元素名称 |模块ID(F) |教师ID(F) |图标|缩略图|上传目录
提前致谢
解决方法
您似乎想要一个 LEFT JOIN
:
SELECT m.ID,count(e.ID) AS numElements
FROM module m LEFT JOIN
element e
ON e.moduleID = m.ID
GROUP BY m.ID;
我不确定您的 WHERE
子句的目的是什么。我怀疑这是试图获取丢失的行。如果要按元素过滤,请在 ON
子句中添加条件。