TO_TIMESTAMP (Lakehouse v1)
TO_TIMESTAMP konwertuje wyrażenie na datę z czasem (timestamp/datetime).
Funkcja może przyjmować jeden lub dwa argumenty. Jeśli podano jeden argument, funkcja wyodrębnia datę z ciągu znaków. Jeśli argument jest liczbą całkowitą, funkcja interpretuje ją jako liczbę sekund, milisekund lub mikrosekund przed epoką Uniksa (dla liczby ujemnej) lub po niej (dla liczby dodatniej); epoka to północ 1 stycznia 1970 r.:
- Jeśli liczba całkowita jest mniejsza niż 31 536 000 000, jest traktowana jako sekundy.
- Jeśli liczba całkowita jest większa lub równa 31 536 000 000 i mniejsza niż 31 536 000 000 000, jest traktowana jako milisekundy.
- Jeśli liczba całkowita jest większa lub równa 31 536 000 000 000, jest traktowana jako mikrosekundy.
Jeśli podano dwa argumenty, funkcja konwertuje pierwszy ciąg znaków na timestamp zgodnie z formatem określonym w drugim ciągu. Aby dostosować format daty i czasu w PlaidCloud Lakehouse, można użyć specyfikatorów. Pozwalają one zdefiniować wymagany format wartości daty i czasu. Pełną listę obsługiwanych specyfikatorów znajdziesz w sekcji Formatowanie daty i czasu.
- Wynikowy timestamp odzwierciedla strefę czasową PlaidCloud Lakehouse.
- Informacje o strefie czasowej muszą być zawarte w konwertowanym ciągu znaków, w przeciwnym razie zostanie zwrócona wartość NULL.
Formaty daty zapisuje się zgodnie ze specyfikacją strftime. Zobacz krótkie zestawienie.
Zobacz także: TO_DATE
Składnia Analyze
Dział zatytułowany „Składnia Analyze”func.to_timestamp(<expr>)Przykłady Analyze
Dział zatytułowany „Przykłady Analyze”func.to_timestamp('2022-01-02T03:25:02.868894-07:00')
┌────────────────────────────────────────────────────────────────┐│ func.to_timestamp('2022-01-02T03:25:02.868894-07:00') ││ Timestamp │├────────────────────────────────────────────────────────────────┤│ 2022-01-02 10:25:02.868894 │└────────────────────────────────────────────────────────────────┘Składnia SQL
Dział zatytułowany „Składnia SQL”-- Convert a string or integer to a timestampTO_TIMESTAMP(<expr>)
-- Convert a string to a timestamp using the given patternTO_TIMESTAMP(<expr, expr>)Typ zwracany
Dział zatytułowany „Typ zwracany”Zwraca timestamp w formacie „YYYY-MM-DD hh:mm:ss.ffffff”. Jeśli podany ciąg znaków pasuje do tego formatu, ale nie zawiera części czasowej, jest automatycznie rozszerzany do tego wzorca. Wartością uzupełniającą jest 0.
Przykłady SQL
Dział zatytułowany „Przykłady SQL”Argument w postaci ciągu znaków
Dział zatytułowany „Argument w postaci ciągu znaków”SELECT TO_TIMESTAMP('2022-01-02T03:25:02.868894-07:00');
---2022-01-02 10:25:02.868894
SELECT TO_TIMESTAMP('2022-01-02 02:00:11');
---2022-01-02 02:00:11.000000
SELECT TO_TIMESTAMP('2022-01-02T02:00:22');
---2022-01-02 02:00:22.000000
SELECT TO_TIMESTAMP('2022-01-02T01:12:00-07:00');
---2022-01-02 08:12:00.000000
SELECT TO_TIMESTAMP('2022-01-02T01');
---2022-01-02 01:00:00.000000Argument w postaci liczby całkowitej
Dział zatytułowany „Argument w postaci liczby całkowitej”SELECT TO_TIMESTAMP(1);
---1970-01-01 00:00:01.000000
SELECT TO_TIMESTAMP(-1);
---1969-12-31 23:59:59.000000Dwa argumenty
Dział zatytułowany „Dwa argumenty”SET GLOBAL timezone ='Japan';SELECT TO_TIMESTAMP('2022 年 2 月 4 日、8 時 58 分 59 秒、タイムゾーン:+0900', '%Y年%m月%d日、%H時%M分%S秒、タイムゾーン:%z');
---2022-02-04 08:58:59.000000
SET GLOBAL timezone ='America/Toronto';SELECT TO_TIMESTAMP('2022 年 2 月 4 日、8 時 58 分 59 秒、タイムゾーン:+0900', '%Y年%m月%d日、%H時%M分%S秒、タイムゾーン:%z');
---2022-02-03 18:58:59.000000