Czasami do czynienia z datą i godziną w formacie SQL może być dość trudne. Chociaż data i godzina są w rzeczywistości całkowicie różnymi typami danych, często są scalane w typ danych typu data i godzina. Daty i godziny SQL same są dość proste, ale połączenie tych dwóch może być jednym z najbardziej bolesnych zadań. W tym artykule dowiesz się szczegółowo o typie daty i godziny SQL.
- Jaki jest typ danych DateTime?
- datetime Opis
- Konwertowanie innych typów daty i godziny na typ danych typu datetime
Jaki jest typ danych typu data i godzina?
W SQL datetime Typ danych date jest używany dla wartości zawierających zarówno datę, jak i godzinę. Microsoft definiuje go jako data w połączeniu z godziną dnia z ułamkami sekund na podstawie zegara 24-godzinnego .
W szczególności SQL ma wiele typów danych, które łączą reprezentacje daty i czasu, co czyni rzeczy bardziej złożonymi. Najpopularniejszym z nich jest DATETIME, który był obecny od wcześniejszych wersji SQL. SQL pobiera i wyświetla wartości DATETIME w formacie „RRRR-MM-DD gg: mm: ss”. Obsługiwany zakres to „1753-01-01 00:00:00” do „9999-12-31 23: 59: 59.997”. Przyjrzyjmy się dokładniej typowi daty i godziny.
datetime Opis
Sprawdź poniższą tabelę, aby dowiedzieć się więcej o typie daty i godziny SQL.
własność | Wartość |
Składnia | datetime |
Stosowanie | ZADEKLAROWAĆ @MyDatetimedatetime CREATE TABLE Tabela1 (Kolumna1datetime) |
Format | „RRRR-MM-DD hh: mm: ss.nnn |
Zakres czasu | Od 00:00:00 do 23: 59: 59.997 |
Zakresy elementów |
|
Rozmiar pamięci jak zainstalować php | 8 bajtów |
Domyślna wartość | 1900-01-01 00:00:00 |
Kalendarz | Gregoriański (obejmuje pełny zakres lat). |
Uwaga: Powyższe szczegóły dotyczą typu datetime w języku Transact-SQL iSQL Server.
Więc to jest datetime w SQL. Ale co byś zrobił, gdybyś miał inną randkę itypy czasu i musisz je przekonwertować na datetime rodzaj?
Konwertowanie innych typów daty i godziny na typ danych typu datetime
Plik datetime typ danych w SQL zawiera datę i godzinę, z trzycyfrową częścią ułamkową sekundy. Jego dokładność jest zaokrąglana do przyrostów co .000, .003 lub .007 sekundy. Tak więc, gdy konwertujesz plik data lub czas wartości do datetime , do wartości dodawane są dodatkowe informacje. To dlatego, że datetime typ danych zawiera zarówno datę, jak i godzinę. Ta część artykułu wyjaśnia, co się dzieje, gdy inne Data i godzina typy danych są konwertowane na datetime typ danych.
Przykład 1: Niejawna konwersja między datą a datą i godziną
ZADEKLAROWAĆ @date date = '2020-12-01' ZADEKLAROWAĆ @datetime datetime = @date
Wynik
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Przykład 2: Niejawna konwersja między datą a datą i godziną przy użyciu metody CAST ()
DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'datetime'
Wynik
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Przykład 3: Niejawna konwersja z smalldatetime na datetime
Kiedy konwersja jest z s malldatetime typ, godziny i minuty są kopiowane. Sekundy i ułamki sekund są ustawiane na wartość 0. Poniższy kod przedstawia wyniki konwersji pliku smalldatetime wartość do a datetime wartość.
ZADEKLAROWAĆ @smalldatetime smalldatetime = '2020-12-01 12:32' ZADEKLAROWAĆ @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'
Wynik
@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12:32: 00.000 2016-12-01 12:32:00
Podobnie możesz przekonwertować inne pliki data i godzina typy do datatime wpisz niejawnie lub używając odlew() i konwertować() metody. W celach informacyjnych zapoznaj się z poniższą tabelą, aby zapoznać się z formatami wszystkich typów daty i godziny.
Typ danych | Przykład |
czas | 12:35:29. 1234567 |
data | 2007-05-08 |
smalldatetime | 2007-05-08 12:35:00 |
datetime | 2007-05-08 12: 35: 29.123 |
datetime2 | 2007-05-08 12:35:29. 1234567 |
datetimeoffset | 2007-05-08 12: 35: 29.1234567 +12: 15 |
Tym samym dotarliśmy do końca tego artykułu. Mam nadzieję, że masz jasność co do omawianych tutaj treści. Upewnij się, że ćwiczysz jak najwięcej i cofnij swoje doświadczenie.
Jeśli chcesz dowiedzieć się więcej o MySQL i poznaj tę relacyjną bazę danych typu open source, a następnie sprawdź naszą który obejmuje szkolenie na żywo prowadzone przez instruktora i rzeczywiste doświadczenie projektowe. To szkolenie pomoże Ci dogłębnie zrozumieć MySQL i osiągnąć mistrzostwo w tym temacie.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w tym artykule „Procedury w języku SQL”, a skontaktujemy się z Tobą.