ما الفرق بين رمز الشهر ورمز الدقائق في DATE_FORMAT؟

متوسطقراءة دقيقةآخر تحديث 3 أكتوبر 2026

SQL قواعد البيانات

الإجابة

تستخدم الدالة DATE_FORMAT رموزًا داخل نص التنسيق لاختيار أجزاء التاريخ والوقت وطريقة عرضها. يمثل الرمز %m رقم الشهر، بينما يمثل %i الدقائق. التشابه بين كلمة الدقائق الإنجليزية والحرف المستخدم للشهر قد يؤدي إلى خطأ يبدو صحيحًا من حيث الصياغة، لكنه يعرض قيمة مختلفة عن المطلوب.

هذا الخطأ لا يلزم أن يوقف الاستعلام؛ فقد تظهر قيمة الشهر في موضع الدقائق دون رسالة خطأ. لذلك يجب مراجعة الرموز، لا الاكتفاء بملاحظة أن الناتج يحتوي على أرقام وفواصل بالشكل المتوقع. تستخدم الساعة بنظام الأربع والعشرين الرمز %H، ويمكن جمع هذه الأجزاء مع رموز التاريخ في قالب واحد.

مثال

SELECT DATE_FORMAT('2026-04-15 09:37:00', '%Y-%m-%d %H:%i') AS label;

يعرض المثال الشهر الرابع والدقيقة السابعة والثلاثين في موضعيهما الصحيحين. وتعيد الدالة نصًا منسقًا يصلح للعرض، مع بقاء القيمة الزمنية الأصلية مستقلة عن هذا التنسيق.

باختصار: استخدم %m للشهر و%i للدقائق، وراجع القالب إذا ظهرت أرقام صحيحة ظاهريًا في مواضع خاطئة.

هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.

اختبر فهمك

المطلوب عرض الساعة والدقائق من starts_at. أين الخطأ في هذا الاستعلام؟

SELECT DATE_FORMAT(starts_at, '%H:%m') AS start_time
FROM events;