Wanneer u filtert op een OUTER JOIN, moet u filteren in de ON-component of als een afgeleide tabel. Wanneer image.display_order = '1'
is in de WAAR, het zal altijd een INNER JOIN zijn
SELECT
topic.content_id,
topic.title,
image.location
FROM
mps_contents AS topic
LEFT JOIN
mps_contents AS image ON topic.content_id = image.page_id
AND image.display_order = '1'
WHERE
topic.page_id = (SELECT page_id FROM mps_pages WHERE page_short_name = 'foo' )
of
SELECT
topic.content_id,
topic.title,
image.location
FROM
mps_contents AS topic
LEFT JOIN
(
SELECT *
FROM mps_contents
WHERE display_order = '1'
) AS image ON topic.content_id = image.page_id
WHERE
topic.page_id = (SELECT page_id FROM mps_pages WHERE page_short_name = 'foo' )