0
我目前有:LEFT JOIN只返回一半所需要的结果
SELECT * FROM submissions AS s
LEFT JOIN submission_category AS sc ON s.submission_category = sc.sub_cat_id
JOIN hospitals AS h ON h.hospital_id = sc.main_hospital_id
JOIN products AS p ON p.product_id = s.product_id
JOIN product_group AS pg ON pg.id = p.product_group_id
JOIN progress_steps AS ps ON sc.approval_step = ps.step_id
WHERE s.approval_status='2'
AND sc.user_id='$mask5'
的问题是,SC有3行S有6行。我需要返回所有六行,但目前它只返回3,其中每一行都对应于sc。根据该建议,我现在想
:
SELECT * FROM submissions AS s
LEFT JOIN submission_category AS sc ON (s.submission_category = sc.sub_cat_id AND sc.user_id='$mask5')
JOIN hospitals AS h ON h.hospital_id = sc.main_hospital_id
JOIN products AS p ON p.product_id = s.product_id
JOIN product_group AS pg ON pg.id = p.product_group_id
JOIN progress_steps AS ps ON sc.approval_step = ps.step_id
WHERE s.approval_status='2'
但仍然得到三人行,不是6?在WHERE
LEFT JOIN
βed表格[秒]的
我试过调整并更新了问题。还有其他建议吗?谢谢你的帮助。 –
@Dev Newb:与[INNER] JOIN医院和progress_steps相同的问题;它过滤掉结果集中的记录,因为它引用了'sc'。它们也应该是'LEFT JOIN'。对不起,我没有注意到蝙蝠的权利。 – a1ex07
工作。谢谢! –