بحث الرسائل المباشرة (فترة)

نظرة معمقة على جميع الرسائل المرسلة والمستلمة من قبل مستخدم ضمن الإطار الزمني المحدد.

-- [params]
-- user_id :user
-- string :interval = 1 month

SELECT 
    chat_channel_id,
    user_id,
    message,
    created_at AS reltime$time,
    created_at 
FROM chat_messages
WHERE chat_channel_id IN (
       SELECT cc.id
       FROM chat_channels cc
       JOIN chat_messages cm ON cm.chat_channel_id = cc.id
       WHERE cc.chatable_type = 'DirectMessage'
       AND cm.user_id = :user
   )
AND created_at::date > CURRENT_TIMESTAMP - INTERVAL :interval
ORDER BY chat_channel_id DESC, created_at ASC
إعجابَين (2)

هذا لا يزال يعمل، ولكني لاحظت أنه يحتاج إلى تعديل طفيف لمراعاة بعض التغييرات التي طرأت على الجداول منذ فترة. إنه يؤثر فقط على معرفات القنوات، لذا فهو ليس مشكلة كارثية.