DateTimeDiff (kueri NoSQL)

BERLAKU UNTUK: NoSQL

Mengembalikan perbedaan, sebagai bilangan bulat bertanda tangan, dari bagian tanggal dan waktu yang ditentukan antara dua nilai tanggal dan waktu.

Sintaks

DateTimeDiff(<date_time_part>, <start_date_time>, <end_date_time>)

Argumen

Deskripsi
date_time_part String yang mewakili bagian dari spesifikasi format tanggal ISO 8601. Bagian ini digunakan untuk menunjukkan aspek tanggal mana yang akan dibandingkan.
start_date_time String tanggal dan waktu Waktu Universal Terkoordinasi (UTC) dalam format YYYY-MM-DDThh:mm:ss.fffffffZISO 8601 .
end_date_time String tanggal dan waktu Waktu Universal Terkoordinasi (UTC) dalam format YYYY-MM-DDThh:mm:ss.fffffffZISO 8601 .

Catatan

Untuk informasi selengkapnya tentang format ISO 8601, lihat ISO 8601.

Jenis yang ditampilkan

Mengembalikan nilai numerik yang merupakan bilangan bulat bertanda tangan.

Contoh

Contoh berikut membandingkan 4 Februari 2019 16:00 UTC dan 5 Maret 2018 05:00 UTC menggunakan berbagai bagian tanggal dan waktu.

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("diffDays", "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("diffDays", "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,
    "diffPastHours": -8075,
    "diffPastSeconds": -29070000,
    "diffFutureYears": 1,
    "diffFutureMonths": 11,
    "diffFutureHours": 8075,
    "diffFutureSeconds": 29070000
  }
]

Keterangan

  • Fungsi ini mengembalikan undefined karena alasan berikut:
    • Bagian tanggal dan waktu yang ditentukan tidak valid.
    • Tanggal dan waktu dalam argumen mulai atau akhir bukan string tanggal dan waktu ISO 8601 yang valid.
  • Format tanggal ISO 8601 menentukan bagian tanggal dan waktu yang valid untuk digunakan dengan fungsi ini: | | Format | | --- | --- | | Hari | day, dd, d | | Jam | hour, hh | | Menit | minute, mi, n | | Kedua | second, ss, s | | Milidetik | millisecond, ms | | Mikrosekon | microsecond, mcs | | Nanodetik | nanosecond, ns |
  • Fungsi selalu mengembalikan nilai bilangan bulat yang ditandatangani. Fungsi mengembalikan pengukuran jumlah batas yang disilangkan untuk bagian tanggal dan waktu yang ditentukan, bukan pengukuran interval waktu.