أرغب في استخدام مستكشف بيانات Discourse لمعرفة إجمالي دقائق المستخدمين حول المدة التي يقضيها مستخدمي في القراءة. ثم يمكننا تعديل هذا الاستعلام لمعرفة المدة التي يقضيها المستخدم المتوسط في القراءة، وهو ما سيكون مفيدًا أيضًا.
هل هذا ممكن؟
أرغب في استخدام مستكشف بيانات Discourse لمعرفة إجمالي دقائق المستخدمين حول المدة التي يقضيها مستخدمي في القراءة. ثم يمكننا تعديل هذا الاستعلام لمعرفة المدة التي يقضيها المستخدم المتوسط في القراءة، وهو ما سيكون مفيدًا أيضًا.
هل هذا ممكن؟
استعلام سريع وسهل للغاية هو…
SELECT user_id, time_read FROM user_stats ORDER BY time_read DESC
هذا يعطيك وقت القراءة لجميع المستخدمين بترتيب تنازلي لوقت القراءة.
أيضًا، هناك بعض الاستعلامات في هذا الموضوع التي يمكن أن تكون نقطة انطلاق جيدة: Data explorer query to list the longest "estimated read time" topics?.
هل من الممكن الحصول عليها حسب اليوم بدلاً من حسب المستخدم؟ مثل X دقائق قراءة في هذا اليوم
لقد اكتشفت الأمر، هذا الاستعلام يحصل على إجمالي الوقت المستغرق يوميًا:
SELECT visited_at, SUM(time_read * 60) AS total_user_secs
FROM user_visits
GROUP BY visited_at
ORDER BY visited_at
مثال في منتداي:
أعتقد أن time_read موجود بالفعل بالثواني (لذلك بالدقائق سيكون time_read /60 وبالساعات سيكون time_read /3600)
أعتقد أنه إذا كنت ترغب في النظر إلى رسم بياني لمتوسط وقت القراءة لكل مستخدم في اليوم خلال إطار زمني معين، فسيبدو الاستعلام شيئًا كهذا:
-- [params]
-- date :start_date
-- date :end_date
SELECT
visited_at,
ROUND(AVG(time_read/60),2)::float AS total_minutes
FROM user_visits
WHERE visited_at BETWEEN :start_date AND :end_date
GROUP BY visited_at
ORDER BY visited_at