استخراج الشهر والسنة من تاريخ ووقت في SQL Server 2005
عند العمل مع قواعد البيانات، غالبًا ما تظهر حاجة للتلاعب ببيانات التاريخ والوقت لاستخراج مكونات معينة. في SQL Server 2005، تُعتبر الحاجة الشائعة هي استخراج الشهر
و السنة
من قيمة تاريخ ووقت
وتنسيقها كسلسلة نصية، مثل ‘يناير 2008’. إذا كنت تواجه هذه التحدي، فأنت لست وحدك. دعونا نستكشف كيفية تحقيق ذلك بكفاءة.
التحدي
قد تجد أن العديد من الدوال المدمجة، مثل datepart
أو convert
، لا تُقدم مباشرة تنسيق الإخراج الذي ترغب فيه. قد يؤدي ذلك إلى الاعتقاد بأنه لا توجد حل سهل للحصول على الشهر والسنة بالشكل ‘يناير 2008’. ومع ذلك، هناك بالفعل طريقة لتحقيق هدفك باستخدام بناء جملة SQL.
الحل
لاستخراج الشهر
و السنة
من تاريخ ووقت
ودمجهما معًا في سلسلة نصية منسقة واحدة، يمكنك استخدام دالة CONVERT
مرتين مع استخدام دمج السلاسل النصية. إليك تحليل خطوة بخطوة للحل:
الخطوة 1: استخدام دالة CONVERT
تسمح لك دالة CONVERT
في SQL Server بتغيير نوع البيانات إلى نوع آخر. لغرضنا، ستقوم بتحويل قيمة تاريخ ووقت
إلى سلسلة نصية.
CONVERT(CHAR(4), date_of_birth, 100)
تقوم هذه الشيفرة باستخراج الشهر والسنة من عمود افتراضي باسم date_of_birth
. النمط 100
يمنحنا اسم الشهر الكامل.
الخطوة 2: الحصول على السنة
لاستخراج السنة، استخدم دالة CONVERT
أخرى مع نمط مختلف:
CONVERT(CHAR(4), date_of_birth, 120)
وهذا سيعطيك السنة بتنسيق مكون من أربعة أرقام (مثل ‘2008’).
الخطوة 3: دمج النتائج
بمجرد أن يكون لديك الشهر والسنة بشكل منفصل، يمكنك دمجهما معًا لتكوين الإخراج المرغوب:
SELECT
CONVERT(CHAR(4), date_of_birth, 100) + ' ' + CONVERT(CHAR(4), date_of_birth, 120) AS MonthYear
FROM customers
استعلام المثال
إليك كيف سيبدو الاستعلام SQL الكامل لاسترجاع الشهر والسنة من عمود تاريخ ووقت
باسم date_of_birth
في جدول باسم customers
:
SELECT
CONVERT(CHAR(4), date_of_birth, 100) + ' ' + CONVERT(CHAR(4), date_of_birth, 120) AS MonthYear
FROM customers
موارد إضافية
لمزيد من خيارات التنسيق وفهم دالة CONVERT
، يمكنك مراجعة وثائق SQL Server الرسمية.
الخاتمة
إن استخراج وتنسيق الشهر
و السنة
من تاريخ ووقت
في SQL Server 2005 يعد الأمر بسيطًا بمجرد أن تعرف كيف تستخدم دالة CONVERT
بفعالية. باستخدام الطريقة المذكورة أعلاه، يمكنك بسهولة تجميع نتائجك حسب الشهر والسنة، مما يساعدك على إجراء تحليلات قائمة على التاريخ بكل سهولة.
الآن، يمكنك استرجاع وتنسيق قيم تاريخ ووقت
الخاصة بك حسب الحاجة بكل ثقة!