Jeśli LEFT JOIN
dwie tabele, możesz użyć ORDER BY
klauzula, aby zrobić to, czego potrzebujesz:
SELECT *
FROM
questions
LEFT JOIN results
ON results.q_id = questions.id
ORDER BY
ISNULL(results.id) DESC, results.created ASC
LIMIT 1
Spowoduje to umieszczenie wszystkich pytań, które nie mają wyników, na początku listy, po których nastąpi lista wszystkich pytań z wynikami (w kolejności „najstarsze pytanie od pierwszej”). LIMIT 1
będzie wyświetlać tylko najlepszy wynik - który powinien pasować do tego, czego potrzebujesz.