Đúng. where mệnh đề đang chuyển phép nối bên ngoài bên trái thành một phép nối bên trong.
Tại sao? Giá trị của pe.pqid là NULL (cũng như pe.uid ) khi không có kết quả phù hợp. Vì vậy, so sánh trong where mệnh đề không thành công (hầu hết tất cả các so sánh với NULL trả về NULL được coi là sai).
Giải pháp là chuyển so sánh sang on mệnh đề:
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