ربما شيء مثل:
من (المستخدم المسجل) يعرض موضوعًا محددًا
-- [المعاملات]
-- int :topic_id = 1
SELECT
title,
viewed_at,
tv.user_id
FROM topics t
LEFT JOIN topic_views tv
ON t.id = tv.topic_id
WHERE category_id IS NOT NULL
AND tv.user_id IS NOT NULL
AND t.id = :topic_id
ORDER BY viewed_at DESC
LIMIT 1000
آخر 100 مشاهدة لموضوع من قبل المستخدم
-- [المعاملات]
-- int :user_id = 1
SELECT
tv.user_id,
title,
viewed_at,
views,
t.user_id
FROM topics t
LEFT JOIN topic_views tv
ON t.id = tv.topic_id
WHERE category_id IS NOT NULL
AND tv.user_id = :user_id
ORDER BY viewed_at DESC
LIMIT 100