Измените тип данных '2019-03-28 23: 59: 03.000000000' VARCHAR на DATETIME в SQL - PullRequest
0 голосов
/ 04 апреля 2019

У меня есть таблица, в которой дата хранится в '2019-03-28 23:59:03.000000000' в формате VARCHAR в SQL. Я хочу преобразовать его из varchar в datetime и удалить последние значения 000000000 из date.

От '2019-03-28 23:59:03.000000000' до '2019-03-28 23:59:03'. Пожалуйста, помогите мне. Спасибо

Ответы [ 2 ]

1 голос
/ 04 апреля 2019

Если вы не хотите показывать миллисекунды, попробуйте это. Datetime2 позволяет вам указать, сколько миллисекунд вы хотите отобразить, в данном случае я использовал 0.

SELECT CONVERT (DATETIME2(0), '2019-03-28 23:59:03.000000000', 121)
0 голосов
/ 04 апреля 2019

Просто

SELECT CAST(REPLACE('2019-03-28 23:59:03.000000000', '.000000000', '') AS DATETIME)

при выборе из таблицы вы

SELECT CAST(REPLACE(<YourColumn>, '.000000000', '') AS DATETIME)
FROM <YourTable>;

Функция REPLACE() удалит '.000000000' из вашей строки и останется просто '2019-03-28 23:59:03'который вы будете разыгрывать как DATETIME

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...