我想写一个查询,将拉动一些产品信息和照片,如果产品有任何。mySQL联盟允许非匹配
select
prod.pID, prod.Manufacturer_Name, prod.pUPC, prod.pNum, prod.pPrice, prod.pSalesPrice, prod.pSalesDate, prod.pSalesEndDate, prod.pSale,
GROUP_CONCAT(photoName) as photos
from
ds_products as prod
inner join ds_photos as pics on pics.objectID=prod.pID
where
pics.photoFlag =2
group by
prod.pID
问题在于没有照片的产品会被遗漏在结果集之外。我需要添加和/或更改哪些内容才能让没有出现在照片列表中的产品显示在结果中?
感谢
编辑
我试过LEFT JOIN代替内,但得到相同的结果集。如果我只是跑:
select
prod.pID, prod.Manufacturer_Name, prod.pUPC, prod.pNum, prod.pPrice, prod.pSalesPrice, prod.pSalesDate, prod.pSalesEndDate, prod.pSale
from
ds_products as prod
我得到约600k结果。内连接或左连接查询获得约19万个结果。有没有另一种方法来做到这一点?
请看上面编辑 – baiano
@baiano,我刚刚编辑了答案,只是检查它是否工作 – Ankur
OR是NULL得到了一切,谢谢。 – baiano