19
مارس

دوال التاريخ والوقت في MySQL

سأستعرض في هذه المقالة أهم دوال التعامل مع التاريخ والوقت في MySQL.

لنبدأ…

  • curdate أو current_date: يعيد التاريخ الحالي بصيغة yyyy-mm-dd:
SELECT curdate();
  • curtime أو current_time: يعيد الوقت الحالي بصيغة hh:mm:ss:
SELECT curtime();
  • now: يعيد التاريخ والوقت الحالي بصيغة yyyy-mm-dd hh:mm:ss:
SELECT now(); #Result: 2011-03-19 10:59:04
  • date: يقوم بتجزئة التاريخ فقط، مثال:
SELECT date(now()); #2011-03-19
  • time: يقوم بتجزئة الوقت فقط، مثال:
SELECT time(now()); #11L20:59
  • hour, minute, second: بالترتيب يظهر الساعة، الدقيقة، الثانية للتاريخ:
SELECT hour(now()) as H, minute(now()) as M, second(now()) as S;
  • day, week, month, year: بالترتيب يظهر: اليوم، الأسبوع، الشهر، السنة:
SELECT day(now()) as D, week(now()) as W, month(now()) as M, year(now()) as Y;
  • to_days: تقوم هذه الدالة باسترجاع مجموع الأيام من سنة 0 وحتى التاريخ المدخل إليها، مثال:
SELECT to_days('1890-01-01'); #690309
  • time_to_sec: يقوم بتحويل الوقت المدخل إلى ثواني:
SELECT time_to_sec(now());
  • sec_to_time: تحويل الثواني إلى وقت:
SELECT sec_to_time(9897); #02:44:57
  • dayname, monthname: بالترتيب يعيد اسم اليوم، واسم الشهر:
SELECT dayname('1986-06-11') As D, monthname('1986-06-11') as M;
  • dayofweek, dayofmonth: بالترتيب يعيد الترتيب الأسبوعي لليوم، والترتيب الشهري لليوم:
SELECT dayofweek(now()) AS D, dayofmonth(now()) as M;
  • extract: استخرجاع تاريخ أو وقت معين (يأخذ الأنواع ذاتها في date_sub و date_add):
SELECT extract(year from now()) as Y, extract(month from now()) as M;
  • timediff, datediff: يظهر الاختلاف بين تاريخين أو فترتين زمنيتين:
SELECT datediff('1991-07-17', '1986-06-11');

تعديل التاريخ والوقت

يمكن تعديل التاريخ والوقت باستخدام إحدى الطرق التالية:

1
2
3
4
SELECT now() + interval 1 minute; #إضافة دقيقة إلى الوقت الحالي
SELECT date_sub( NOW(), interval 1 year); #إضافة سنة إلى التاريخ الحالي
SELECT date_add( NOW(), interval - 1 year); #الرجوع إلى ما قبل سنة
SELECT addtime( curtime(), '1:5:10'); #إضافة ساعة وخمس دقائق وعشرة ثواني

استخدم الجدول هذا لمعرفة القيم المتاحة للتحكم بها (جزء ثانية، ثانية، دقيقة، ساعة و…).

ودمتم بخير… ;-(

تعليق واحد

تعليقك على الموضوع

خلاصات التعليقات RSS   التعقيبات

جميع الحقوق محفوظة لـ مدونة أحمد المياحي © 2017