Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Typ:
Dotyczy:
, sprawdzanie bazy danych SQL usługi Databricks
Databricks Runtime 18.3 lub nowsze
Ważna
Ta funkcja jest dostępna w wersji beta. Administratorzy obszaru roboczego mogą kontrolować dostęp do tej funkcji ze strony Podglądy . Zobacz Zarządzanie wersjami zapoznawczami usługi Azure Databricks.
Reprezentuje godzinę dnia zawierającą wartości pól godziny, minuty i sekundy bez strefy czasowej.
Syntax
TIME | TIME(p)
p: opcjonalna precyzja określająca liczbę cyfr ułamkowych w polu sekund.
Prawidłowe wartości to 06. Jeśli p zostanie pominięta, domyślna precyzja to 6 (mikrosekundy).
Limity
Obsługiwany zakres wartości czasu to 00:00:00.000000 .23:59:59.999999
Literals
TIME timeString
timeString
{ '[h]h:[m]m' |
'[h]h:[m]m:[s]s' |
'[h]h:[m]m:[s]s.[f...]' |
'[h]h:[m]m AM|PM' |
'[h]h:[m]m:[s]s AM|PM' |
'[h]h:[m]m:[s]s.[f...] AM|PM' }
-
[h]h: jedna lub dwie godziny między00i (format 24-godzinny) lub między01i1223(format 12-godzinny zAM/PM). -
[m]m: jedna lub dwie cyfry minuty między00i59. -
[s]s: jedna lub dwie cyfry sekundy między00i59. -
[f...]: Maksymalnie 6 cyfr ułamkowych części sekundy. -
AMlubPM: opcjonalny sufiks bez uwzględniania wielkości liter wskazujący wartość zegara 12-godzinnego.
Prefiks TIME jest niewrażliwy na wielkość liter.
Jeśli drugi składnik nie zostanie określony, zostanie on domyślnie określony jako 0.
Jeśli literał nie reprezentuje odpowiedniego czasu, Azure Databricks zgłasza błąd.
Reguły precyzji
Gdy są łączone dwie TIME wartości o różnych precyzjach (na przykład w coalesce, CASE, UNION lub arytmetyce), wynik wykorzystuje szerszą z dwóch precyzji.
Na przykład najmniej typowy typ TIME(3) i TIME(6) to TIME(6).
W przypadku rzutowania wartości na niższą precyzję TIME ułamkowe sekundy są obcinane, a nie zaokrąglane:
> SELECT CAST(TIME'12:30:45.987654' AS TIME(3));
12:30:45.987
Po dodaniu lub odjęciu interwału dziennego do TIMEelementu wynik wykorzystuje szerszą TIME precyzję i ułamkową precyzję sekundy interwału. Na przykład TIME(0) + INTERVAL '1.123456' SECOND zwraca wartość TIME(6). Jeśli wynik spadnie poza [00:00:00, 24:00:00), Azure Databricks podnosi DATETIME_OVERFLOW.
Notatki
Wszystkie operacje na TIME wartościach są wykonywane bez uwzględniania żadnej strefy czasowej.
Aby używać TIME kolumn w tabelach usługi Delta Lake, obsługa jest włączana automatycznie podczas tworzenia nowej tabeli delty z kolumną TIME typu. Aby dodać kolumnę TIME do istniejącej tabeli, należy najpierw włączyć tę funkcję:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.feature.timeType' = 'supported')
Typ TIME ma następujące ograniczenia:
- Nieobsługiwane w wygenerowanych kolumnach.
- Nieobsługiwane w przypadku indeksów filtrów blooma.
- Nieobsługiwane w przypadku zamawiania Z.
Examples
> SELECT TIME'10:30:00';
10:30:00
> SELECT TIME'08:15';
08:15:00
> SELECT TIME'23:59:59.123456';
23:59:59.123456
> SELECT CAST('14:30:00' AS TIME);
14:30:00
> SELECT CAST('09:15:30.5' AS TIME(3));
09:15:30.500
> SELECT current_time();
16:57:04.304361
> SELECT make_time(6, 30, 45.887);
06:30:45.887000
Related
-
TIMESTAMPtyp -
TIMESTAMP_NTZtyp -
DATEtyp -
castfunkcja -
current_timefunkcja -
make_timefunkcja -
to_timefunkcja -
try_to_timefunkcja -
time_truncfunkcja -
time_difffunkcja -
time_from_secondsfunkcja -
time_from_millisfunkcja -
time_from_microsfunkcja -
time_to_secondsfunkcja -
time_to_millisfunkcja -
time_to_microsfunkcja