sql >> Databasteknik >  >> RDS >> Mysql

Hitta den äldsta posten i en koppling mellan två tabeller

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.



  1. Vad du ska kontrollera om PostgreSQL-minnesutnyttjandet är högt

  2. Vad jag ska välja - JSON eller SQLite?

  3. Är det en bra idé att använda MySQL och Neo4j tillsammans?

  4. InnoDB infogar endast post om refererat id finns (utan UTLÄNDSKA NYCKLAR)