В этом руководстве вы узнаете, как преобразовать дату и время в строку в SQL Server с помощью функции CONVERT().
- Использование функции CONVERT() для преобразования даты и времени в строку
- Примеры преобразования даты и времени в строку
- 1) Пример преобразования даты и времени в строку в формате mon dd yyyy hh:miAM(или PM)
- 2) Пример преобразования даты и времени в строку в форматах мм/дд/гг и мм/дд/гггг
- 3) Пример преобразования даты и времени в строку в формате mon dd yyyy hh:miAM(или PM)
- 4) Пример преобразования даты и времени в строку в форматах дд.мм.гг и дд.мм.гггг
- 5) Пример преобразования даты и времени в строку в форматах дд-мм-гг дд-мм-гггг
- 6) Пример преобразования даты и времени в строку в формате дд мес гг дд мес гггг
- 7) Пример преобразования даты и времени в строку в формате Mon dd, yy Mon dd, yyyy
Пример преобразования даты и времени в строку в формате чч:ми:сс
- 9) Пример преобразования даты и времени в строку в формате mon dd yyyy hh:mi:ss:mmmAM(или PM)
- 10) Пример преобразования даты и времени в строку в формате мм-дд-гг и мм-дд-гггг
- 11) Пример преобразования даты и времени в строку в формате гг/мм/дд и гггг/мм/дд
- 12) Пример преобразования даты и времени в строку в формате ггммдд и ггггммдд
- 13) Пример преобразования даты и времени в строку в формате дд пн гггг чч:ми:сс:ммм(24ч)
- 14) Пример преобразования даты и времени в строку в формате чч:ми:сс:ммм(24ч)
- 15) Пример преобразования даты и времени в строку в формате гггг-мм-дд чч:ми:сс(24h)
- 16) Пример преобразования даты и времени в строку в формате гггг-мм-дд чч:ми:сс.ммм(24h)
- 17) Пример преобразования даты и времени в строку в формате гггг-мм-ддТчч:ми:сс.ммм
- 18) Пример преобразования даты и времени в строку в формате гггг-мм-ддТчч:ми:сс.мммZ
Использование функции CONVERT() для преобразования даты и времени в строку
Чтобы преобразовать дату и время в строку, используйте функцию CONVERT() следующим образом:
CONVERT(VARCHAR, datetime [,style])
В этом синтаксисе:
- VARCHAR — первый аргумент, представляющий тип строки.
- datetime — это выражение, результатом которого является значение даты или datetime, которое требуется преобразовать в строку.
- sytle определяет формат даты. Значение style — это число, предопределенное SQL Server. Параметр style является необязательным.
В следующей таблице показан допустимый стиль и соответствующий формат даты и времени после преобразования в строку.
Без века(гг) | С веком(гггг) | Стандарт | Формат |
---|---|---|---|
– | 0 или 100 | По умолчанию для datetime и smalldatetime | пн дд гггг чч:миAM(или PM) |
1 | 101 | НАС | 1 = мм/дд/гг 101 = мм/дд/гггг |
2 | 102 | АНСИ | 2 = гг.мм.дд 102 = гггг.мм.дд |
3 | 103 | Британский/Французский | 3 = дд/мм/гг 103 = дд/мм/гггг |
4 | 104 | немецкий | 4 = дд.мм.гг 104 = дд.мм.гггг |
5 | 105 | итальянский | 5 = дд-мм-гг 105 = дд-мм-гггг |
6 | 106 | – | 6 = дд пн гг 106 = дд пн гггг |
7 | 107 | – | 7 = Пн дд, гг 107 = Пн дд, гггг |
8 | 108 | – | чч:ми:сс |
– | 9 или 109 | По умолчанию + миллисекунды | пн дд гггг чч:ми:сс:мммAM(или PM) |
10 | 110 | США | 10 = мм-дд-гг 110 = мм-дд-гггг |
11 | 111 | ЯПОНИЯ | 11 = гг/мм/дд 111 = гггг/мм/дд |
12 | 112 | ИСО | 12 = ггммдд 112 = ггггммдд |
– | 13 или 113 | Европа по умолчанию + миллисекунды | дд пн гггг чч:ми:сс:ммм(24ч) |
14 | 114 | – | чч:ми:сс:ммм(24ч) |
– | 20 или 120 | ODBC канонический | гггг-мм-дд чч:ми:сс(24ч) |
– | 21 или 121 | Каноническое значение ODBC(с миллисекундами) по умолчанию для времени, даты, datetime2 и datetimeoffset | гггг-мм-дд чч:ми:сс.ммм(24ч) |
– | 126 | ISO8601 | гггг-мм-ддТчч:ми:сс.ммм(без пробелов) |
– | 127 | ISO8601 с часовым поясом Z. | гггг-мм-ддТчч:ми:сс.мммZ(без пробелов) |
– | 130 | Хиджра | дд пн гггг чч:ми:сс:мммAM |
– | 131 | Хиджра | дд/мм/гггг чч:ми:сс:мммAM |
Примеры преобразования даты и времени в строку
1) Пример преобразования даты и времени в строку в формате mon dd yyyy hh:miAM(или PM)
DECLARE @dt DATETIME = '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(20),@dt,0) s1, CONVERT(VARCHAR(20),@dt,100) s2;
Вот что получилось:
s1 s2 -------------------- -------------------- Dec 31 2019 2:43PM Dec 31 2019 2:43PM (1 row affected)
2) Пример преобразования даты и времени в строку в форматах мм/дд/гг и мм/дд/гггг
DECLARE @dt DATETIME = '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10),@dt,1) s1, CONVERT(VARCHAR(10),@dt,101) s2;
Вот что получилось:
s1 s2 ---------- ---------- 12/31/19 12/31/2019 (1 row affected)
3) Пример преобразования даты и времени в строку в формате mon dd yyyy hh:miAM(или PM)
DECLARE @dt DATETIME = '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10),@dt,3) s1, CONVERT(VARCHAR(10),@dt,103) s2;
Вот что получилось:
s1 s2 ---------- ---------- 31/12/19 31/12/2019 (1 row affected)
4) Пример преобразования даты и времени в строку в форматах дд.мм.гг и дд.мм.гггг
DECLARE @dt DATETIME = '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10),@dt,4) s1, CONVERT(VARCHAR(10),@dt,104) s2;
Вот что получилось:
s1 s2 ---------- ---------- 31.12.19 31.12.2019 (1 row affected)
5) Пример преобразования даты и времени в строку в форматах дд-мм-гг дд-мм-гггг
DECLARE @dt DATETIME = '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10),@dt,5) s1, CONVERT(VARCHAR(10),@dt,105) s2;
Вот что получилось:
s1 s2 ---------- ---------- 31-12-19 31-12-2019 (1 row affected)
6) Пример преобразования даты и времени в строку в формате дд мес гг дд мес гггг
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 6) s1, CONVERT(VARCHAR(10), @dt, 106) s2;
Вот что получилось:
s1 s2 ---------- ---------- 31 Dec 19 31 Dec 201 (1 row affected)
7) Пример преобразования даты и времени в строку в формате Mon dd, yy Mon dd, yyyy
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 7) s1, CONVERT(VARCHAR(10), @dt, 107) s2;
Вот что получилось:
s1 s2 ---------- ---------- Dec 31, 19 Dec 31, 20 (1 row affected)
Пример преобразования даты и времени в строку в формате чч:ми:сс
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 108) s1;
Вот что получилось:
s1 ---------- 14:43:35 (1 row affected)
9) Пример преобразования даты и времени в строку в формате mon dd yyyy hh:mi:ss:mmmAM(или PM)
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(30), @dt, 109) s1;
Вот что получилось:
s1 ------------------------------ Dec 31 2019 2:43:35:863PM (1 row affected)
10) Пример преобразования даты и времени в строку в формате мм-дд-гг и мм-дд-гггг
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 10) s1, CONVERT(VARCHAR(10), @dt, 110) s2;
Вот результат:
s1 s2 ---------- ---------- 12-31-19 12-31-2019 (1 row affected)
11) Пример преобразования даты и времени в строку в формате гг/мм/дд и гггг/мм/дд
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 11) s1, CONVERT(VARCHAR(10), @dt, 111) s2;
Вот результат:
s1 s2 ---------- ---------- 19/12/31 2019/12/31 (1 row affected)
12) Пример преобразования даты и времени в строку в формате ггммдд и ггггммдд
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 12) s1, CONVERT(VARCHAR(10), @dt, 112) s2;
Вот результат:
s1 s2 ---------- ---------- 191231 20191231 (1 row affected)
13) Пример преобразования даты и времени в строку в формате дд пн гггг чч:ми:сс:ммм(24ч)
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(10), @dt, 113) s1;
Вот результат:
s1 ---------- 31 Dec 201 (1 row affected)
14) Пример преобразования даты и времени в строку в формате чч:ми:сс:ммм(24ч)
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(20), @dt, 114) s1;
Вот результат:
s1 -------------------- 14:43:35:863 (1 row affected)
15) Пример преобразования даты и времени в строку в формате гггг-мм-дд чч:ми:сс(24h)
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(20), @dt, 120) s1;
Вот результат:
s1 -------------------- 2019-12-31 14:43:35 (1 row affected)
16) Пример преобразования даты и времени в строку в формате гггг-мм-дд чч:ми:сс.ммм(24h)
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(30), @dt, 121) s1;
Вот результат:
s1 ------------------------------ 2019-12-31 14:43:35.863 (1 row affected)
17) Пример преобразования даты и времени в строку в формате гггг-мм-ддТчч:ми:сс.ммм
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(25), @dt, 126) s1;
Вот результат:
s1 ------------------------- 2019-12-31T14:43:35.863 (1 row affected)
18) Пример преобразования даты и времени в строку в формате гггг-мм-ддТчч:ми:сс.мммZ
DECLARE @dt DATETIME= '2019-12-31 14:43:35.863'; SELECT CONVERT(VARCHAR(25), @dt, 127) s1;
Вот результат:
s1 ------------------------- 2019-12-31T14:43:35.863 (1 row affected)
В этом уроке вы узнали, как преобразовать дату в строку с помощью функции CONVERT().