DateTimeDiff (استعلام NoSQL)
ينطبق على: NoSQL
إرجاع الفرق، كعدد صحيح موقع، للتاريخ المحدد وجزء الوقت بين قيمتي التاريخ والوقت.
بناء الجملة
DateTimeDiff(<date_time_part>, <start_date_time>, <end_date_time>)
الوسيطات
الوصف | |
---|---|
date_time_part |
سلسلة تمثل جزءا من مواصفات تنسيق التاريخ ISO 8601. يستخدم هذا الجزء للإشارة إلى جانب التاريخ المراد مقارنته. |
start_date_time |
سلسلة التاريخ والوقت العالمي المتفق عليه (UTC) بتنسيق YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601 . |
end_date_time |
سلسلة التاريخ والوقت العالمي المتفق عليه (UTC) بتنسيق YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601 . |
إشعار
لمزيد من المعلومات حول تنسيق ISO 8601، راجع ISO 8601.
أنواع الإعادة
إرجاع قيمة رقمية عبارة عن عدد صحيح موقع.
الأمثلة
تقارن الأمثلة التالية بين 4 فبراير 2019 16:00 بالتوقيت العالمي المتفق عليه و5 مارس 2018 05:00 بالتوقيت العالمي المتفق عليه باستخدام أجزاء مختلفة من التاريخ والوقت.
SELECT VALUE {
diffPastYears: DateTimeDiff("yyyy", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
diffPastMonths: DateTimeDiff("mm", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
diffPastDays: DateTimeDiff("dd", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
diffPastHours: DateTimeDiff("hh", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
diffPastSeconds: DateTimeDiff("ss", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
diffFutureYears: DateTimeDiff("yyyy", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
diffFutureMonths: DateTimeDiff("mm", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
diffFutureDays: DateTimeDiff("dd", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
diffFutureHours: DateTimeDiff("hh", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
diffFutureSeconds: DateTimeDiff("ss", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000")
}
[
{
"diffPastYears": -1,
"diffPastMonths": -11,
"diffPastDays": -336,
"diffPastHours": -8075,
"diffPastSeconds": -29070000,
"diffFutureYears": 1,
"diffFutureMonths": 11,
"diffFutureDays": 336,
"diffFutureHours": 8075,
"diffFutureSeconds": 29070000
}
]
الملاحظات
- ترجع
undefined
هذه الدالة للأسباب التالية:- جزء الوقت والتاريخ المحدد غير صحيح.
- التاريخ والوقت في وسيطة البدء أو النهاية ليست سلسلة تاريخ ووقت ISO 8601 صالحة.
- يحدد تنسيق التاريخ ISO 8601 أجزاء التاريخ والوقت الصالحة لاستخدامها مع هذه الدالة: | | تنسيق | | --- | --- | | اليوم |
day
،dd
، | |d
ساعة |hour
،hh
| | دقيقة |minute
،mi
،n
| | ثانيا |second
،ss
، |s
| مللي ثانية |millisecond
،ms
| | ميكرو ثانية |microsecond
،mcs
| | Nanosecond |nanosecond
،ns
| - ترجع الدالة دائما قيمة عدد صحيح موقع. ترجع الدالة قياسا لعدد الحدود التي تم تجاوزها للتاريخ المحدد وجزء الوقت، وليس قياسا للفاصل الزمني.