0%

left join & where

在做数据库练习题时,遇到了这样的问题:

给出每个专业借阅的“c2”类的图书总数,没有借阅的次数显示为0(majorid,majorname,borrowcount)

数据库内容如下

数据库

最开始使用where语句对结果进行筛选,但是显示不了为0的项where

参照网上的做法用LEFT JOIN 关键字进行了修改join

所以查了一下where和left join的区别:

LEFT JOIN 关键字从左表(table1)返回所有的行,即使右表(table2)中没有匹配。如果右表中没有匹配,则结果为 NULL(在某些数据库中,LEFT JOIN 称为 LEFT OUTER JOIN。)

where语句中如果没有匹配的,则返回一个空集,因此借阅人数为0的书籍不会被显示出来