-
ينبغي أن يكون النوع
Dateكافيًا في معظم الحالات. ويتطلب هذا النوع 2 بايت لتخزين تاريخ، ويقتصر نطاقه على[1970-01-01, 2149-06-06]. -
يغطّي
Date32نطاقًا أوسع من التواريخ. ويتطلب 4 بايت لتخزين تاريخ، ويقتصر نطاقه على[1900-01-01, 2299-12-31] -
يخزّن
DateTimeقيم التاريخ والوقت بدقة الثواني، ضمن نطاق[1970-01-01 00:00:00, 2106-02-07 06:28:15]. ويتطلب 4 بايت لكل قيمة. -
في الحالات التي تتطلب دقة أعلى، يمكن استخدام
DateTime64. ويتيح ذلك تخزين الوقت بدقة تصل إلى النانوثانية، ضمن نطاق[1900-01-01 00:00:00, 2299-12-31 23:59:59.99999999]. ويتطلب 8 بايت لكل قيمة.
now() لإرجاع الوقت الحالي، واستخدام now64() للحصول عليه بدقة يحددها الوسيط الأول.
النوعان Time وTime64
Time وTime64، وقد أُضيفا في الإصدار 25.6. وهما مفيدان لتمثيل الجداول الزمنية المتكررة والأنماط اليومية، أو في الحالات التي يكون فيها فصل مكوّنات التاريخ والوقت منطقيًا.
يتطلب استخدام
Time وTime64 تفعيل الإعداد: SET enable_time_time64_type = 1;أُضيف هذان النوعان في الإصدار 25.6Time الساعات والدقائق والثواني بدقة الثواني. ويُخزَّن داخليًا على هيئة عدد صحيح موقّع من 32 بت، ويدعم نطاقًا مقداره [-999:59:59, 999:59:59]، مما يتيح قيَمًا تتجاوز 24 ساعة. وقد يكون هذا مفيدًا عند تتبّع الوقت المنقضي أو إجراء عمليات حسابية تنتج عنها قيَم خارج حدود يوم واحد.
أما بالنسبة إلى الدقة دون الثانية، فيخزّن Time64 الوقت مع كسور الثواني القابلة للضبط كقيمة Decimal64 موقّعة. ويقبل معامل دقة (0-9) لتحديد عدد الخانات الكسرية. ومن قيم الدقة الشائعة 3 (مللي ثانية)، و6 (ميكروثانية)، و9 (نانوثانية).
لا يدعم Time ولا Time64 المناطق الزمنية، إذ يمثلان قيَم وقت يوم خالصة من دون سياق إقليمي.
لننشئ جدولًا يحتوي على أعمدة وقت:
Time، تُفسَّر القيم الرقمية على أنها ثوانٍ منذ 00:00:00. أما بالنسبة إلى Time64، فتُفسَّر القيم الرقمية على أنها ثوانٍ منذ 00:00:00، ويُفسَّر الجزء الكسري وفقًا لدقة العمود:
المناطق الزمنية
DateTime وDateTime64:
America/New_York.
- يُحوَّل
dt_1وdt64_1تلقائيًا إلىEurope/Berlinوقت تنفيذ الاستعلام. - لم تُحدَّد منطقة زمنية لـ
dt_2وdt64_2، لذا يستخدمان المنطقة الزمنية المحلية للخادم، وهي في هذه الحالةEurope/London.
dt_1 و dt64_1 إلى Europe/Berlin، بينما يستخدم dt_2 و dt64_2 المنطقة الزمنية المحلية للخادم.
دوال التاريخ والوقت
toDate لتحويل قيمة DateTime إلى النوع Date:
toDateTime64 لتحويل DateTime إلى DateTime64:
toDateTime للتحويل من Date أو DateTime64 مرة أخرى إلى DateTime: