2016-11-14 3 views
0

Мне нужно удалить метку времени из datetime типа данных на SQL-сервере и сохранить тип выходных данных как дату с этим форматом -> mm/dd/yyyy (Этот вывод должен отображаться поскольку тип данных даты не является строковым типом данных). Я использую SQL Server 2012.Преобразование даты и времени в тип данных даты в SQLserver

Пожалуйста, помогите

Благодарности

+1

Вам нужно перейти к более подробному описанию. У вас есть таблица, в которой вы пытаетесь изменить тип данных? Вы просто пытаетесь изменить это в инструкции select? –

+0

Спасибо за ваше время Rich, Его столбец даты из таблицы размеров даты. поскольку это столбец datetime, я вижу временную метку. Я не хочу видеть временную метку на моем выходе и хочу видеть дату в этом формате -> mm/dd/yyyy – Drake

+0

Хорошо, круто, проверьте ответ Гордона. Я думаю, что это должно было покрыть его –

ответ

4

Это слишком долго для комментария.

В SQL Server date по существу является datetime без какого-либо компонента времени. Вы можете сделать преобразование просто выполнив:

cast(datetimecol as date) 

И, хотя сохраняются с использованием внутреннего формата в . Формат вывода контролируется параметрами интернационализации (или базой данных по умолчанию). Вы можете вывести любой тип столбца в виде строки , формат мм/дд/гггг, используя формат 101 преобразования:

select convert(varchar(10), <col>, 101) 

Выход затем строка с форматом вы хотите.

+0

Спасибо Гордон, я хочу, чтобы тип вывода как дата без отметки времени в формате mm/dd/yyyy – Drake

+0

@Drake. , , Затем сосредоточьтесь на преобразовании значения в строку * * не * дату *. –

0

Вы пробовали CONVERT (дата, [FieldName])?

Приобрести эту документацию и CAST() here.

+0

Да, я сделал это, поэтому при таком подходе тип данных - дата и я не вижу метку времени, но она дает мне дату в этом формате -> yyyy-mm-dd, – Drake

+0

CONVERT (date, [FieldName], 101) –

Смежные вопросы