Funkcja konwersji() programu SQL Server
Jednym ze sposobów konwersji danej wartości typu data/godzina na łańcuch jest użycie funkcji convert(). Składnia jest taka, jak pokazano:
KONWERTOWAĆ ( typ danych [ ( DŁUGOŚĆ ) ] , wyrażenie [ , STYL ] )Parametry funkcji są wyrażone poniżej:
- data_type – docelowy typ danych.
- Wyrażenie – dowolne poprawne wyrażenie
- długość – opcjonalna liczba całkowita określająca długość docelowego typu danych.
- styl – wyrażenie typu integer, które określa, w jaki sposób funkcja tłumaczy podane wyrażenie.
Funkcja zwraca wyrażenie wejściowe przekonwertowane na docelowy typ danych.
Dlatego, aby przekonwertować datę i godzinę na ciąg, możemy użyć składni jako:
KONWERTOWAĆ ( VARCHAR , datagodzina [ , STYL ] )
W poniższej tabeli przedstawiono prawidłowe style i równoważny format wartości datetime po konwersji na typ ciągu.
Przykład
Poniższy przykład pokazuje, jak przekonwertować DateTime na ciąg.
OGŁOSIĆ @obj DATAGODZINA = „2022-10-10 13:45:34.100” ;
WYBIERZ KONWERTOWAĆ ( VARCHAR ( pięćdziesiąt ) , @obj ) ;
W powyższym przykładzie zaczynamy od zadeklarowania zmiennej skalarnej o nazwie obj. Zawiera wartość daty i godziny, którą chcemy przekonwertować.
Na koniec wywołujemy funkcję convert i przekazujemy docelowy typ danych jako varchar. Powinno to zwrócić styl dla określonej daty i godziny jako:
|----+
październik 10 2022 1 :45 wieczorem |
Przykład 2
Aby przekonwertować obiekt datetime na format mm/dd/rrrr. Ustaw styl jako 1.
OGŁOSIĆ @obj DATAGODZINA = „2022-10-10 13:45:34.100” ;WYBIERZ KONWERTOWAĆ ( VARCHAR ( pięćdziesiąt ) , @obj , 1 ) ;
Wynikowy wynik:
|--------+
10 / 10 / 22 |
Przykład 3
Aby zwrócić wartość daty i godziny w formacie dd.mm.rrrr, możemy ustawić styl na 4.
OGŁOSIĆ @obj DATAGODZINA = „2022-10-10 13:45:34.100” ;WYBIERZ KONWERTOWAĆ ( VARCHAR ( pięćdziesiąt ) , @obj , 4 ) ;
Wyjście:
|--------+
10 . 10 . 22 |
Przykład 4
Aby przekonwertować datetime na string w formacie hh:mi:ss, uruchom kod:
OGŁOSIĆ @obj DATAGODZINA = „2022-10-10 13:45:34.100” ;WYBIERZ KONWERTOWAĆ ( VARCHAR ( pięćdziesiąt ) , @obj , 108 ) ;
Wartość zwracana:
|--------+
13 : Cztery pięć : 3. 4 |
Wniosek
W tym poście omówiono podstawy konwertowania danej wartości typu data/godzina na ciąg znaków w różnych formatach. Możesz sprawdzić wiele formatów i odpowiadające im style w powyższej tabeli.