sql >> Databasteknik >  >> RDS >> Mysql

Med tanke på två tabeller, välj all data från en tabell och endast den senaste från den andra

Hitta först det senaste inlägget i varje kategori:

select topic_cat, max(topic_id) as latest_topic
from topics group by topic_cat

Lägg sedan till det i dina anslutningsvillkor:

SELECT  c.cat_name AS Category, t.topic_name AS Recent_Topic 
FROM categories c
left JOIN topics t on c.cat_id = t.topic_cat 
left join (select topic_cat, max(topic_id) as latest_topic
        from topics group by topic_cat) as latest_topics 
        on latest_topics.topic_cat = c.cat_id
        and latest_topics.latest_topic = t.topic_id 
where latest_topics.topic_cat is not null or t.topic_cat is null;


  1. Hur man hanterar MySQL-servern körs med alternativet --secure-file-priv så den kan inte köra detta uttalande på en Mac

  2. MySQL kopiera en användare

  3. MySQL:Räkna poster från en tabell och uppdatera sedan en annan

  4. Hur hämtar man tabellnamn i en mysql-databas med Python och MySQLdb?