Sim. O
where
cláusula está transformando a junção externa esquerda em uma junção interna. Por quê? O valor de
pe.pqid
é NULL
(como é pe.uid
) quando não há correspondência. Portanto, a comparação no where
cláusula falha (quase todas as comparações com NULL
return NULL
que é considerado falso). A solução é mover a comparação para o
on
cláusula: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