كيفية الحصول على مرات المشاهدة الشهرية برمجياً؟ يفضل باستخدام Data Explorer

مرحبًا أيها المجتمع!

هل كتب أحدكم استعلامًا باستخدام مستكشف البيانات لجلب عدد مشاهدات الصفحة شهريًا؟

هل توجد طريقة برمجية أخرى للحصول على هذه الأرقام غير الدخول اليدوي إلى لوحة التحكم الخاصة بي؟

هذا هو الاستعلام الكامن وراء تقرير Consolidated Pageviews، آمل أن يكون مفيدًا.

-- [params]
-- date :start_date
-- date :end_date

SELECT
    ar.date,
    CASE 
      WHEN ar.req_type=6 THEN 'Crawlers'
      WHEN ar.req_type=7 THEN 'Logged in users'
      WHEN ar.req_type=8 THEN 'Anonymous users'
    END,
    ar.count AS views
FROM application_requests ar
WHERE req_type IN (6,7,8)
    AND ar.date::date BETWEEN :start_date::date
	AND :end_date::date
ORDER BY ar.date ASC, ar.req_type
4 إعجابات

ممتاز! هذا يساعد قليلاً!

هل من الممكن جلب هذا الرقم:

يعرض هذا الاستعلام إجمالي عدد مشاهدات الصفحات خلال الفترة المحددة.

-- [params]
-- date :start_date
-- date :end_date

WITH data AS (
    SELECT
        ar.date,
        CASE 
          WHEN ar.req_type=6 THEN 'زوار الروبوتات'
          WHEN ar.req_type=7 THEN 'المستخدمون المسجلون'
          WHEN ar.req_type=8 THEN 'المستخدمون المجهولون'
        END AS Pageview,
        ar.count AS views
    FROM application_requests ar
    WHERE req_type IN (6,7,8)
        AND ar.date::date BETWEEN :start_date::date
    	AND :end_date::date
    ORDER BY ar.date ASC, ar.req_type
)

SELECT Pageview, SUM(views) qtt_views
FROM data
GROUP BY Pageview
3 إعجابات

ممتاز! هذا هو ما كنت أبحث عنه.

إعجاب واحد (1)

في الحقيقة، لدي سؤال آخر. ربما لن يكون ذلك جهدًا كبيرًا.

هل توجد طريقة للحصول على النتائج بالتنسيق التالي باستخدام دالة الجمع (sum):

نعم، هذا ممكن. في هذه الحالة، تحتاج أولاً إلى تعديل تنسيق حقل التاريخ، ثم تعديل عملية التجميع حسب. فيما يلي الاستعلام المعدّل:

-- [params]
-- date :start_date
-- date :end_date

WITH data AS 
    (SELECT
        date_part('month', ar.date) AS month,
        date_part('year', ar.date) AS year,
        CASE 
          WHEN ar.req_type=6 THEN 'Crawlers'
          WHEN ar.req_type=7 THEN 'Logged in users'
          WHEN ar.req_type=8 THEN 'Anonymous users'
        END AS pageview,
        ar.count AS views
    FROM application_requests ar
    WHERE req_type IN (6,7,8)
        AND ar.date::date BETWEEN :start_date::date
    	AND :end_date::date
    ORDER BY ar.date ASC, ar.req_type
    )
    
  SELECT 
    month, 
    year, 
    sum(views) AS qtt_views
  FROM  data 
  GROUP BY year, month
  ORDER BY year DESC, month ASC
month year count
1 2021 1000
2 2021 500
1 2020 1500
2 2020 2000
3 2020 2500
4 إعجابات

ممتاز! شكراً للمساعدة!

إعجابَين (2)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.