我现在正在使用多个内部联接,但其中一个表可能根本不包含任何结果。
下面是我目前正在使用的查询
SELECT
property.id,
full_address,
street_address,
street.street,
city.city as city,
state.state_code as state_code,
zipcode.zipcode as zipcode,
property_history.date_event AS event_date,
property_history.event AS event
FROM
property
INNER JOIN street ON street.id = property.street_id
INNER JOIN city ON city.id = property.city_id
INNER JOIN state ON state.id = property.state_id
INNER JOIN zipcode ON zipcode.id = property.zipcode_id
INNER JOIN property_history ON property_history.property_id = property.id
WHERE
full_address = ?
现在,如果 property_history
没有返回任何行,那么我将一无所获。我假设我需要使用其他类型的连接?
我仍然想获取 property.id
、full_address
、street_address
等,即使 property_history
是空的。
最佳答案
你应该使用LEFT OUTER JOIN
:
LEFT JOIN property_history ON property_history.property_id = property.id
关于sql - 如果联接表不返回结果,则不返回任何行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57739624/