Как конвертировать целое число в datetime в формате varchar - PullRequest
0 голосов
/ 07 сентября 2018

Я получаю эту ошибку при попытке преобразовать целое число ниже в datetime в формате varchar.

Ошибка преобразования при преобразовании даты и / или времени из строки символов

Код:

CONVERT(VARCHAR(MAX), CAST('200901041421' AS DATETIME))

1 Ответ

0 голосов
/ 07 сентября 2018

Вам нужен пробел и двоеточие. Я не уверен, почему вы хотите сделать это, хотя ... представьте дату в формате на вашем внешнем интерфейсе (уровне представления) и сохраните даты как даты или время в базе данных, и вы не столкнетесь с этой проблемой: )

SELECT CONVERT(VARCHAR(MAX), CAST('20090104 14:21' AS DATETIME))

Кроме того, нет необходимости использовать MAX здесь. Это пустая трата хранения. Нечто подобное имеет больше смысла.

SELECT CONVERT(VARCHAR(24), CAST('20090104 14:21' AS DATETIME), 113)

Использование имени столбца ...

SELECT CONVERT(VARCHAR(24), CAST(YourColumnName AS DATETIME), 113)
FROM YourTable

Вы можете увидеть другие преобразования здесь

...