مرحباً @RachFeverBee،
يعد استخدام استعلام مستكشف البيانات (Data Explorer) أفضل طريقة للعثور على المعلومات التي تبحث عنها.
بناءً على المواضيع التي شاركتها ووصف احتياجاتك من التقارير، إليك استعلام مستكشف البيانات يمكنك استخدامه كنقطة انطلاق لهذا:
فئات المواضيع والردود
-- [params]
-- date :start_date = 2023-01-01
-- date :end_date = 2025-01-28
WITH filtered_topics AS (
SELECT
t.id AS topic_id,
t.title AS topic_title,
t.created_at AS topic_created_at,
t.user_id AS topic_user_id,
t.category_id AS topic_category_id
FROM
topics t
WHERE
t.created_at BETWEEN :start_date AND :end_date
),
filtered_posts AS (
SELECT
p.id AS post_id,
p.topic_id,
p.user_id AS post_user_id,
p.created_at AS post_created_at,
p.raw AS post_content,
p.post_number
FROM
posts p
WHERE
p.created_at BETWEEN :start_date AND :end_date
),
categories_with_topics AS (
SELECT
c.id AS category_id,
c.name AS category_name,
ft.topic_id,
ft.topic_title,
ft.topic_created_at,
ft.topic_user_id
FROM
categories c
JOIN
filtered_topics ft ON c.id = ft.topic_category_id
),
final_data AS (
SELECT
cwt.category_name,
cwt.topic_id,
cwt.topic_title,
cwt.topic_created_at,
cwt.topic_user_id,
fp.post_id,
fp.post_content,
fp.post_created_at,
fp.post_user_id,
fp.post_number
FROM
categories_with_topics cwt
LEFT JOIN
filtered_posts fp ON cwt.topic_id = fp.topic_id
)
SELECT
fd.category_name AS "الفئة",
fd.topic_id AS "معرف الموضوع",
fd.topic_title AS "عنوان الموضوع",
fd.topic_created_at AS "تاريخ إنشاء الموضوع",
fd.topic_user_id AS "ناشر الموضوع",
fd.post_id AS "معرف المنشور",
fd.post_content AS "محتوى المنشور",
fd.post_created_at AS "تاريخ إنشاء المنشور",
fd.post_user_id AS "ناشر المنشور",
fd.post_number AS "رقم المنشور"
FROM
final_data fd
ORDER BY
fd.topic_created_at ASC,
fd.post_created_at ASC
سيقوم هذا التقرير بإنشاء النتائج التالية:
- اسم الفئة: اسم الفئة.
- معرف الموضوع: المعرف القابل للربط للموضوع.
- عنوان الموضوع: عنوان الموضوع.
- تاريخ إنشاء الموضوع: تاريخ إنشاء الموضوع.
- ناشر الموضوع: المستخدم الذي أنشأ الموضوع.
- معرف المنشور: المعرف القابل للربط للمنشور.
- محتوى المنشور: النص الكامل للمنشور.
- تاريخ إنشاء المنشور: تاريخ إنشاء المنشور.
- ناشر المنشور: المستخدم الذي أنشأ المنشور.
- رقم المنشور: رقم المنشور داخل الموضوع.
نتائج مثال
| الفئة |
معرف الموضوع |
عنوان الموضوع |
تاريخ إنشاء الموضوع |
ناشر الموضوع |
معرف المنشور |
محتوى المنشور |
تاريخ إنشاء المنشور |
ناشر المنشور |
رقم المنشور |
| مناقشة عامة |
101 |
مرحباً بالمنتدى! |
2023-01-02 10:00:00 UTC |
1 |
201 |
مرحباً بالجميع، أهلاً بكم! |
2023-01-02 10:05:00 UTC |
2 |
1 |
| مناقشة عامة |
101 |
مرحباً بالمنتدى! |
2023-01-02 10:00:00 UTC |
1 |
202 |
شكراً على الترحيب الحار! |
2023-01-02 10:10:00 UTC |
3 |
2 |
| دعم فني |
102 |
كيف أعيد ضبط جهازي؟ |
2023-02-15 14:30:00 UTC |
4 |
203 |
هل يمكن لأحد مساعدتي في إعادة ضبط هذا؟ |
2023-02-15 14:35:00 UTC |
4 |
1 |
| دعم فني |
102 |
كيف أعيد ضبط جهازي؟ |
2023-02-15 14:30:00 UTC |
4 |
204 |
بالتأكيد، إليك الخطوات… |
2023-02-15 14:40:00 UTC |
5 |
2 |
| إعلانات |
103 |
تم إصدار ميزات جديدة! |
2023-03-01 09:00:00 UTC |
6 |
205 |
اطلع على ميزاتنا الجديدة! |
2023-03-01 09:05:00 UTC |
6 |
1 |
قد ترغب في تعديل كيفية ترتيب الاستعلام للنتائج باستخدام عبارة ORDER BY في النهاية اعتمادًا على كيفية رغبتك في عرض النتائج، ولاحظ أيضًا أنه إذا كان موقعك يحتوي على عدد كبير من المواضيع والمنشورات، فقد تحتاج إلى مراعاة حدود النتائج مع إضافة مستكشف البيانات (Data Explorer plugin).