هذا هو إصدار SQL من تقرير لوحة المعلومات للمستخدم المجهول.
يُظهر هذا التقرير عدد مرات مشاهدة الصفحة التي تلقاها موقع ما كل يوم من المستخدمين المجهولين (المستخدمين الذين لم يسجلوا الدخول إلى حساب) خلال نطاق تاريخ محدد.
--[params]
-- date :start_date = 2023-12-01
-- date :end_date = 2024-01-01
SELECT
date,
SUM(count) AS pageviews
FROM
application_requests
WHERE
req_type = 8
AND date BETWEEN :start_date AND :end_date
GROUP BY
date
ORDER BY
date
شرح استعلام SQL
تعريف المعلمات: يبدأ الاستعلام بتعريف معلمتين، :start_date و :end_date، واللتين تُستخدمان لتصفية البيانات إلى الإطار الزمني المطلوب. تقبل كلتا معلمتي التاريخ تنسيق التاريخ YYYY-MM-DD.
اختيار البيانات: يختار عمودين، date ومجموع count، والذي يُطلق عليه اسم pageviews. يمثل count عدد مرات مشاهدة الصفحة لكل سجل.
مصدر البيانات: يتم الحصول على البيانات من جدول application_requests، الذي يسجل أنواعًا مختلفة من الطلبات المقدمة إلى التطبيق.
التصفية: يقوم شرط WHERE بتصفية السجلات لتضمين فقط تلك التي من نوع page_view_anon (req_type = 8) وتقع ضمن نطاق التاريخ المحدد.
التجميع: يقوم شرط GROUP BY بتجميع النتائج حسب العمود date، مما يسمح للدالة SUM بحساب إجمالي عدد مرات مشاهدة الصفحة لكل تاريخ.
الفرز: أخيرًا، يتم فرز النتائج حسب date بترتيب تصاعدي، مما يوفر عرضًا زمنيًا لمشاهدات الصفحات المجهولة.
نتائج مثال
date
pageviews
2023-12-01
12345
2023-12-02
11346
2023-12-03
18344
2023-12-04
15344
2023-12-05
12890
…
…
ملاحظات حول req_type
يصنف العمود req_type في جدول application_requests نوع الطلب. في هذا الاستعلام، نحن مهتمون بـ req_type = 8، والذي يتوافق مع مشاهدات الصفحات المجهولة.
تمثل قيم req_type الأخرى أنواعًا مختلفة من الطلبات، مثل مشاهدات الصفحات بواسطة الزاحف، ومشاهدات الصفحات للمستخدمين المسجلين، وحالات استجابة HTTP المختلفة.
كنت أفكر في ذلك في الأصل أيضًا، ولكن تقرير لوحة تحكم المسؤول يتضمن فقط page_view_anon، وليس page_view_anon_mobile.
مع الطريقة التي تم بها هذا الاستعلام الآن، فهو يعكس تمامًا تقرير لوحة التحكم، ويمكنك التحقق من ذلك عن طريق تشغيل الاستعلام والمقارنة بنتائج تقرير لوحة التحكم.
وهذا يثير سؤالًا مختلفًا ولكنه متعلق - هل يجب أن يتضمن تقرير لوحة التحكم مشاهدات الصفحات المجهولة للجوال؟
بشكل حدسي، أعتقد نعم، ولكن سيكون من المثير للاهتمام سماع أفكار أخرى حول هذا الموضوع.
عذرًا، إنه الصباح هنا وأحتاج إلى المزيد من القهوة، لذا اصطدمت بجدار اللغة بشدة.
هل تفكر الآن في تضمين الهواتف المحمولة أيضًا بمعنى استبعاد الهواتف المحمولة الآن؟ أو هل يجب أن يعرض مقياسين، إجمالي المشاهدات الفعلية ومشاهدات الهاتف المحمول؟
لا يمكن أن يكون هذا صحيحًا أو أنه يشمل الروبوتات أيضًا. وبهذا يكون لدي حوالي 1000 روبوت في اليوم وهذا يبدو صحيحًا. لكنني أعلم أن لدي عددًا قليلاً جدًا من أجهزة الكمبيوتر المكتبية. والوضع الذي سيكون لدي فيه 1000 جهاز كمبيوتر مكتبي و 9000 جهاز محمول (نعم، هذه هي النسبة) لا يمكن أن يكون صحيحًا.