SQL столбцу таблицы необходимо изменить формат даты и времени на дату - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть столбец в таблице с этим форматом '2017-05-09 14: 52: 32.000' Я был бы признателен за способ преобразования его в формат даты, такой как ММ / ДД / ГГГГ, с которым я пробовал:

select DATEADD(column, DATEDIFF(column, 0, getdate()), 0)
  FROM table

но я получаю эту ошибку:

Столбец не является опознанным датированным значением.

Я также попробовал другой способ и потерпел неудачу.

Пожалуйста, сообщите.

1 Ответ

1 голос
/ 24 апреля 2020

Я предполагаю, что из сообщения об ошибке вы сообщили, что вы находитесь на SQL сервере.

На SQL сервере функции DATEADD и DATEDIFF принимают "часть даты" в качестве первого аргумента : ГОД, МЕСЯЦ, ДЕНЬ, ЧАС, МИНУТА, ВТОРАЯ или МИЛЛИСЕКУНДА:

SELECT DATEADD(DAY, DATEDIFF(DAY, [COLUMN], GETDATE()), [COLUMN]) 
FROM [TABLE]

может быть, что вы хотите.

Однако,

SELECT CONVERT(DATE, [COLUMN]) AS [COLUMNDATE]

Может быть еще проще.

...