"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > استرجع آخر الأخبار لكل مستخدم من قاعدة البيانات

استرجع آخر الأخبار لكل مستخدم من قاعدة البيانات

نشر في 2025-04-18
تصفح:569

How to Retrieve the Most Recent Message from Each User in a Database?

استعادة أحدث السجلات لكل مجموعة مع مجموعة بواسطة

هدفك هو استخراج أحدث رسالة من كل مستخدم ، أقرب إلى الشاشة في صندوق الوارد على Facebook.

The Squery المقدمة ، "حدد * من مجموعة الرسائل بواسطة From_ID" ، يعطي أقدم رسالة لكل مستخدم بدلاً من آخرها. لتصحيح هذا ، مطلوب نهج بديل.

للحصول على أحدث الرسائل ، تحتاج إلى تحديد الحد الأقصى الطابع الزمني لكل مستخدم والانضمام إلى هذه المعلومات مع جدول "الرسائل". إن الاستعلام أدناه ينجز هذا:

حدد T1.* من الرسائل T1 انضم إلى (حدد من _id ، max (timestamp) timestamp من مجموعة الرسائل بواسطة من _id) t2 على t1.from_id = t2.from_id و t1.timestamp = t2.timestamp ؛
SELECT t1.* FROM messages t1
JOIN (SELECT from_id, MAX(timestamp) timestamp FROM messages GROUP BY from_id) t2
ON t1.from_id = t2.from_id AND t1.timestamp = t2.timestamp;
يؤدي هذا الاستعلام ما يلي:

هذا المساحة الفرعية مع جدول "الرسائل" الأصلي باستخدام أعمدة "من _id" و "Timestamp".
  1. والنتيجة هي جدول يحتوي فقط على أحدث الرسائل لكل مستخدم ، وتوفير الوظيفة المطلوبة.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3