我有3张table(财产、设施、财产和设施)
现在我要从 facility
将属性数据与给定的属性id单独放在表中。
我试过了 LEFT JOIN
如下所示。但我无法从设备表中获取所有设备。
SELECT property_id
, contract_id
, type_id
, location_id
, beds
, ROUND(price,3) as price
, f.facility_id
, f.name
, pf.facility_id
FROM facility f
LEFT JOIN property_facility pf ON pf.facility_id = f.facility_id AND pf.property_id = 6
LEFT JOIN property p USING(property_id)
WHERE p.property_id = 6
有人能告诉我如何正确地提出这个问题吗?
1条答案
按热度按时间qvk1mo1f1#
你的
WHERE
子句正在筛选出不匹配的设施。您需要切换USING
至ON
然后做:你似乎理解这个概念,因为你第一次使用的是相同的条件
JOIN
.嗯,事实上
property_id
不会改变。所以,你可以把WHERE
子句并继续USING
如果你愿意的话。