أحدث البرامج التعليمية وتطوير الشبكة
 

SQL دالات التاريخ


تواريخ SQL

الجزء الأكثر صعوبة عند العمل مع تواريخ هو للتأكد من أن شكل التاريخ الذي تحاول إدراج، يطابق تنسيق العمود تاريخ في قاعدة البيانات.


الخلية وظائف التسجيل

يسرد الجدول التالي وظائف تاريخ أهم المضمنة في الخلية:

وظيفة وصف
NOW() إرجاع التاريخ والوقت الحالي
CURDATE() إرجاع التاريخ الحالي
CURTIME() إرجاع الوقت الحالي
DATE() استخراج جزء التاريخ من التاريخ أو تاريخ التعبير / الساعة
EXTRACT() يعود جزء واحد من تاريخ / وقت
DATE_ADD() ويضيف فترة محددة من الزمن إلى تاريخ
DATE_SUB() يطرح فترة زمنية محددة من تاريخ
DATEDIFF() إرجاع عدد الأيام بين تاريخين
DATE_FORMAT() يعرض تاريخ / بيانات الوقت في أشكال مختلفة

SQL وظائف خادم التسجيل

يسرد الجدول التالي وظائف تاريخ المدمج في أهم في SQL Server:

وظيفة وصف
GETDATE() إرجاع التاريخ والوقت الحالي
DATEPART() يعود جزء واحد من تاريخ / وقت
DATEADD() يضيف أو ينقص فترة زمنية محددة من تاريخ
DATEDIFF() ترجع الوقت بين تاريخين
CONVERT() يعرض تاريخ / بيانات الوقت في أشكال مختلفة

أنواع البيانات SQL التسجيل

MySQL يأتي مع أنواع البيانات التالية لتخزين تاريخ أو وقت / قيمة الوقت في قاعدة البيانات:

  • التاريخ - شكل YYYY-MM-DD
  • DATETIME - شكل: YYYY-MM-DD HH: MI: SS
  • الطابع الزمني - شكل: YYYY-MM-DD HH: MI: SS
  • سنة - شكل س س س س أو ص ص

SQL Server يأتي مع أنواع البيانات التالية لتخزين تاريخ أو وقت / قيمة الوقت في قاعدة البيانات:

  • التاريخ - شكل YYYY-MM-DD
  • DATETIME - شكل: YYYY-MM-DD HH: MI: SS
  • SMALLDATETIME - شكل: YYYY-MM-DD HH: MI: SS
  • الطابع الزمني - شكل: رقم فريد

Note: يتم اختيار أنواع تاريخ لعمود عند إنشاء جدول جديد في قاعدة البيانات الخاصة بك!

لمحة عامة عن جميع أنواع البيانات المتاحة، انتقل إلى لدينا كاملة إشارة أنواع البيانات .


SQL التعامل مع التواريخ

يمكنك مقارنة تاريخين بسهولة إذا كان هناك أي عنصر الوقت الذي يتطلبه!

نفترض لدينا ما يلي "Orders" الجدول:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
2 Camembert Pierrot 2008-11-09
3 Mozzarella di Giovanni 2008-11-11
4 Mascarpone Fabioli 2008-10-29

الآن نحن نريد لتحديد السجلات التي تحتوي على OrderDate من "2008-11-11" من الجدول أعلاه.

نحن نستخدم عبارة SELECT التالية:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

وسوف يقدم مجموعة النتائج تبدو مثل هذا:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
3 Mozzarella di Giovanni 2008-11-11

الآن، افترض أن "Orders" الجدول يبدو مثل هذا (لاحظ وجود عنصر الزمن في "OrderDate" عمود):

OrderId ProductName OrderDate
1 Geitost 2008-11-11 13:23:44
2 الكممبير بييرو 2008-11-09 15:45:21
3 جبن موزاريلا دي جيوفاني 2008-11-11 11:12:01
4 مسكربون Fabioli 2008-10-29 14:56:59

وإذا استخدمنا نفس العبارة SELECT على النحو الوارد أعلاه:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

وسوف نحصل على أي نتيجة! وذلك لأن الاستعلام هو يبحث فقط عن مواعيد مع أي جزء الوقت.

Tip: إذا كنت تريد أن تبقي استفساراتكم بسيطة وسهلة للحفاظ على، لا تسمح مكونات وقت في التواريخ!