البرمجة

اختيار أسعار مكررة في الصفوف الأخيرة

للحصول على الأسعار الخمسة الأخيرة في الجدول وعرض الأسعار التي لها نفس القيمة، يمكنك استخدام الاستعلام التالي:

sql
SELECT idprices, prices FROM test.prices WHERE prices IN ( SELECT prices FROM ( SELECT prices FROM test.prices ORDER BY idprices DESC LIMIT 5 ) AS t GROUP BY prices HAVING COUNT(*) > 1 ) ORDER BY idprices DESC;

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

يرجى ملاحظة أنه قد تحتاج إلى استبدال “test.prices” بالجدول الصحيح إذا كان اسم الجدول الفعلي يختلف.

المزيد من المعلومات

للحصول على المزيد من المعلومات، يمكنك تحديد مجموعة من الأعمدة الإضافية لعرضها في الاستعلام، مثل اسماء الزبائن أو تواريخ الأسعار. يمكنك أيضًا تحسين الأداء بإنشاء فهرس على العمود “prices” إذا كنت تقوم بعمليات بحث كثيرة على هذا العمود.

على سبيل المثال، إذا كان لديك جدول يحتوي على اسماء الزبائن وتواريخ الأسعار، يمكنك تضمين هذه المعلومات في الاستعلام كما يلي:

sql
SELECT p.idprices, p.prices, c.customer_name, p.price_date FROM test.prices p JOIN test.customers c ON p.customer_id = c.customer_id WHERE p.prices IN ( SELECT prices FROM ( SELECT prices FROM test.prices ORDER BY idprices DESC LIMIT 5 ) AS t GROUP BY prices HAVING COUNT(*) > 1 ) ORDER BY p.idprices DESC;

في هذا الاستعلام، قمنا بتضمين اسماء الزبائن (customer_name) وتواريخ الأسعار (price_date) من جدول customers و prices على التوالي، وتم استخدام الرابطة JOIN لربط الصفوف بين الجدولين استنادًا إلى معرف الزبون (customer_id).

زر الذهاب إلى الأعلى