INTERVAL
type
Berlaku untuk: Databricks SQL Databricks Runtime
Mewakili interval waktu baik pada skala detik atau bulan.
Penting
Delta Lake tidak mendukung jenis tersebut INTERVAL
.
Sintaks
INTERVAL { yearMonthIntervalQualifier | dayTimeIntervalQualifier }
yearMonthIntervalQualifier
{ YEAR [TO MONTH] |
MONTH }
dayTimeIntervalQualifier
{ DAY [TO { HOUR | MINUTE | SECOND } ] |
HOUR [TO { MINUTE | SECOND } ] |
MINUTE [TO SECOND] |
SECOND }
Catatan
Interval yang mencakup tahun atau bulan disebut interval bulan-tahun.
Interval yang mencakup hari, jam, menit, atau detik disebut interval waktu hari.
Anda tidak dapat menggabungkan atau membandingkan interval tahun-bulan dan waktu hari.
Interval waktu hari secara ketat didasarkan pada 86400 dtk/hari dan 60 dtk/menit.
Detik selalu dianggap termasuk mikrodetik.
Batas
Interval bulan memiliki rentang maksimal +/- 178,956,970
tahun dan 11
bulan.
Interval waktu hari memiliki rentang maksimal +/- 106,751,991
hari, 23
jam, 59
menit, dan 59.999999
detik.
Harfiah
year-month interval
INTERVAL [+|-] yearMonthIntervalString yearMonthIntervalQualifier
day-time interval
INTERVAL [+|-] dayTimeIntervalString dayTimeIntervalQualifier
yearMonthIntervalString
{ '[+|-] y[...]' |
'[+|-] y[...]-[m]m' }
dayTimeIntervalString
{ '[+|-] d[...]' |
'[+|-] d[...] [h]h' |
'[+|-] d[...] [h]h:[m]m' |
'[+|-] d[...] [h]h:[m]m:[s]s' |
'[+|-] d[...] [h]h:[m]m:[s]s.ms[ms][ms][us][us][us]' |
'[+|-] h[...]' |
'[+|-] h[...]:[m]m' |
'[+|-] h[...]:[m]m:[s]s' |
'[+|-] h[...]:[m]m:[s]s.ms[ms][ms][us][us][us]' |
'[+|-] m[...]' |
'[+|-] m[...]:[s]s' |
'[+|-] m[...]:[s]s.ms[ms][ms][us][us][us]' |
'[+|-] s[...]' |
'[+|-] s[...].ms[ms][ms][us][us][us]' }
y
: Jumlah tahun yang berlalu.m
: Jumlah bulan yang berlalu.d
: Jumlah hari yang berlalu.h
: Jumlah jam yang berlalu.m
: Jumlah menit yang berlalu.s
: Jumlah detik yang berlalu.ms
: Jumlah milidetik yang berlalu.us
: Jumlah mikrodetik yang berlalu.
Kecuali unit merupakan unit utama dari intervalQualifier
harus jatuh dalam kisaran yang ditentukan:
- Bulan: antara 0 dan 11
- Jam: antara 0 dan 23
- Menit: antara 0 dan 59
- Detik: antara 0,000000 detik dan 59,999999
Anda dapat awalan tanda baik di dalam atau di luar intervalString
.
Jika ada satu tanda -
, intervalnya negatif. Jika ada dua atau tanpa tanda -
, intervalnya positif.
Jika komponen dalam intervalString
tidak cocok dengan komponen dalam intervalQualifier
kesalahan dinaikkan.
Jika nilai intervalString
tidak sesuai dengan rentang yang ditentukan oleh intervalQualifier
, kesalahan dinaikkan.
Contoh
> SELECT INTERVAL '100-00' YEAR TO MONTH;
100-0
> SELECT INTERVAL '-3600' MONTH;
-300-0
> SELECT INTERVAL -'200:13:50.3' HOUR TO SECOND;
-200:13:50.3
> SELECT typeof(INTERVAL -'200:13:50.3' HOUR TO SECOND);
interval hour to second
> SELECT CAST('11 23:4:0' AS INTERVAL DAY TO SECOND);
11 23:04:00
Terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk