Eğer gerçekten bunu istiyorsanız, bir tablo gibi olabilir
UserVisit: user_id, topic_id, last_visited_at
which table you update whenever a user opens a topic.
Then you can select the topics of which the id is not in this table, or which has a post added later than last_visited_at. Something like:
SELECT *
FROM Topic
WHERE Topic.id NOT IN (SELECT topic_id FROM UserVisit WHERE user_id = $user_id)
UNION
SELECT *
FROM Topic
LEFT JOIN UserVisit ON Topic.id = UserVisit.topic_id
WHERE user_id = $user_id
AND UserVisit.last_visited_at < Topic.last_post_at
Ama bunun yerine, sadece siteye kullanıcının son ziyaretinizden beri yeni mesaj var konu ile kullanıcıya sunmak öneririz. : Bunu yaparsanız, tüm bu tablo gerekmez, sen gibi konular sorgulayabilirsiniz
SELECT *
FROM Topic
WHERE Topic.last_post_at > $users_last_visit