如何获取列中元素的id和数量,即使它们在SQL中为0



希望你做得很好,我有两个表,一个是moduleelement模块包含元素,所以我在element内有一个moduleID的外键,我想做的是显示模块的ID和该模块中的元素数量,在这里我做了什么:

SELECT module.ID,count(element.ID) AS numElements FROM element JOIN module ON element.moduleID = module.ID WHERE moduleID = module.ID GROUP BY module.ID

但它只显示包含元素的模块,而没有任何元素的模块呢?我真的希望如果我也能打印它们,并在它们的元素计数中显示0

模块表的列:ID(p(|moduleName|classID|upload_dir

元素表的列:ID(p(|elementName|moduleID(F(|teacherID(F(| icon|thumbna|upload_dir

提前感谢

您似乎想要一个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子句中添加条件。

相关内容

  • 没有找到相关文章

最新更新