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

SQL استعلام الحد الأقصى للتاريخ لمبلغ الشيكات غير الصفر

نشر في 2025-04-14
تصفح:495

How to Select Maximum Date Rows with Non-Zero Check Amounts in SQL?

استخراج أحدث الإدخالات مع قيم التحقق من غير صفرية من جدول SQL

يوضح هذا الدليل كيفية استرداد السجلات الأحدث بكفاءة لكل مجموعة ، والتصفية لمبالغ الفحص غير الصفر. لنفترض جدولًا منظمًا مثل هذا:

group    date      cash  checks
  1    1/1/2013     0      0
  2    1/1/2013     0      800
  1    1/3/2013     0      700
  3    1/1/2013     0      600
  1    1/2/2013     0      400
  3    1/5/2013     0      200

نهج SQL التالي يحقق هذا:

أولاً ، نجد الحد الأقصى للتاريخ لكل مجموعة حيث تتحقق القيمة أكبر من الصفر:

SELECT group, MAX(date) AS max_date
FROM table
WHERE checks > 0
GROUP BY group;

هذا ينتج:

group    max_date
  2    1/1/2013
  1    1/3/2013
  3    1/5/2013

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

SELECT t.group, t.date AS max_date, t.checks
FROM table t
INNER JOIN (
  SELECT group, MAX(date) AS max_date
  FROM table
  WHERE checks > 0
  GROUP BY group
) AS a ON a.group = t.group AND a.max_date = t.date;

ينتج هذا الاستعلام النهائي الإخراج المطلوب:

group    max_date    checks
  2    1/1/2013    800
  1    1/3/2013    700
  3    1/5/2013    200

ملاحظة مهمة: باستخدام كلمات محفوظة (مثل Date ) حيث يتم تثبيط أسماء الأعمدة بشدة. يمكن أن يؤدي إلى أخطاء SQL بناء جملة ويجعل الكود الخاص بك أكثر صعوبة في الحفاظ عليه. النظر في المزيد من الأسماء الوصفية وغير الواضحة للأعمدة الخاصة بك.

أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3