Sì. Il where
La clausola sta trasformando il join esterno sinistro in un join interno.
Come mai? Il valore di pe.pqid
è NULL
(come pe.uid
) quando non c'è corrispondenza. Quindi il confronto nel where
clausola fallisce (quasi tutti i confronti con NULL
restituisce NULL
che è considerato falso).
La soluzione è spostare il confronto su on
clausola:
SELECT pq.id, pq.data, pe.data
FROM pq LEFT OUTER JOIN
pe
ON pq.id = pe.pqid and
pe.uid='12345'
ORDER BY pq.id LIMIT 2