Om du LEFT JOIN
de två tabellerna kan du använda ORDER BY
klausul för att göra vad du behöver:
SELECT *
FROM
questions
LEFT JOIN results
ON results.q_id = questions.id
ORDER BY
ISNULL(results.id) DESC, results.created ASC
LIMIT 1
Detta kommer att placera alla frågor som inte har resultat högst upp på listan, följt av en lista med alla frågor med resultat (i "äldsta frågan först"). LIMIT 1
kommer att visa endast det översta resultatet - vilket bör matcha det du behöver.