سأل أحد أعضاء منتدى Discourse لدينا عما إذا كان لدى Discourse طريقة لإظهار/التعرف على أيام الزيارة المتتالية أو النشر في منتدى Discourse. لا أرى تلك المعلومات في أي مكان في معلومات المستخدم الخاصة بالمسؤول، هل يتم الاحتفاظ بها في أي مكان؟
للعلم، لدى reddit هذه الميزة.
إعجاب واحد (1)
حسنًا، نعم، حيث توجد شارات مثل المتحمس (Enthusiast) والهاوي (Aficionado) والمخلص (Devotee) وهي للأيام المتتالية التي تمت زيارتها. زيارة = الإعجاب بمنشور/الرد مرة واحدة على ما أذكر.
3 إعجابات
ربما يمكنك إنشاء استعلام مستكشف بيانات. إليك مخطط جدول user_visits هنا:
ربما شيء مثل هذا؟ ![]()
WITH consecutive_visits AS (
SELECT
user_id,
visited_at,
visited_at - INTERVAL '1 day' * ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY visited_at) AS grp
FROM
user_visits
),
visit_streaks AS (
SELECT
user_id,
COUNT(*) AS streak_length
FROM
consecutive_visits
GROUP BY
user_id, grp
)
SELECT
user_id,
MAX(streak_length) AS longest_streak
FROM
visit_streaks
GROUP BY
user_id
ORDER BY
longest_streak DESC
LIMIT 100
أو ربما يمكنك الدمج مع جدول user_actions بدلاً من ذلك (زيارات مع إعجابات ومنشورات؟)، وهو هنا:
3 إعجابات
شكرًا، سأضع ذلك في اعتباري.
إعجاب واحد (1)
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
