【发布时间】:2022-06-15 17:33:52
【问题描述】:
我试图通过匹配其他几个表来从一个表中获取空值,但空值不会出现。我确实在两个表上留下了连接,然后空值即将到来。任何人都有解决方案。
SELECT img.category_id3
FROM img_attribtes as img LEFT JOIN categories3 as cat3
ON img.category_id3 = cat3.category_id3
SELECT p.name, img.category_id1, img.category_id2, img.category_id3
FROM `photo_managements` as p, categories as cat1, categories2 as cat2
img_attribtes as img
LEFT JOIN categories3 as cat3
ON img.category_id3 = cat3.category_id3
where img.photographers_id = p.id
and cat1.category_id = cat2.category_id
and cat1.category_id = cat3.category_id1
and cat1.category_id = img.category_id1
and cat2.category_id2 = cat3.category_id2
and cat2.category_id2 = img.category_id2
上面显示的是空值,但如果我加入更多的表,我需要完整的数据。那么空值就不会来了。
任何人请分享指针。谢谢
【问题讨论】:
-
这里需要添加示例数据。我们看不到
NULL值,那么我们有什么可以帮助您的吗? -
将所有 cat3 条件从 WHERE 移到 ON 以获得真正的 LEFT JOIN 结果。