SELECT p.*, ph.*
FROM products AS p
INNER JOIN product_photos AS ph
ON p.product_id = ph.product_id
LEFT JOIN product_photos AS ph2
ON p.product_id = ph2.product_id
AND ph2.photo_order < ph.photo_order
WHERE ph2.photo_order IS NULL
ORDER BY p.product_title ASC
Observe como ele se junta à tabela product_photos duas vezes. O
WHERE ph2.photo_order IS NULL
jogará fora todas as fotos, exceto a mais baixa. No entanto, ele não o protegerá contra a combinação de product_id / photo_orders duplicada, você pode adicionar um GROUP BY
em p.id se for esse o caso.