这是我的疑问:
select p.cod_produs, p.title, c.category as cname, p.description, p.short_desc, p.img1, p.price, p.qty, p.isActive, p.disponibilitate
from tblproducts p
inner join tblcategory c on p.cat_id = c.id
我有两张桌子:tblcategory
& tblproducts.
在我的tblcategory
我有一个属性cat_id
。我的产品可能没有分配任何类别,在这种情况下,cat_id
的值为0
。我的查询返回所有具有类别的产品。所以,我想创建一个查询,它返回所有带有类别和没有的产品(返回0)。我怎样才能做到这一点 ? thx
答案 0 :(得分:1)
内部联接:只要两个表中的列之间存在匹配,INNER JOIN关键字就会选择两个表中的所有行。 ie仅当两个表都有匹配列时,才会将其添加到结果中。
左连接: LEFT JOIN关键字返回左表(table1)中的所有行,右表(table2)中的匹配行。没有匹配时,右侧的结果为NULL。我认为这就是你需要的东西(根据我的问题解释)。
详细了解加入here