Дата без времени! - PullRequest
       3

Дата без времени!

1 голос
/ 30 декабря 2010

Я использую следующий оператор для генерации случайных дат:

DATEADD(day, DATEDIFF(day, 1, GETDATE()) - 1 - FLOOR(RAND(CAST(NEWID() AS binary(4))) * 365.25 * 90), 10)

Но я получаю следующий формат:

1974-01-28 00: 00: 00.000

Как мне избавиться от части времени 00: 00: 00.000?

Ответы [ 3 ]

4 голосов
/ 30 декабря 2010

Если вы используете SQL Server 2008, тогда используйте date тип данных вместо datetime, иначе вы не сможете.Тип данных datetime всегда содержит компонент времени, сохраненный вместе с ним.

Вы можете удалить его для отображения, хотя, приведя к типу символа и передав аргумент стиля.например,

select CONVERT(varchar,GETDATE(),105)

Возвраты

30-12-2010

Весь список читов для этих форматов здесь

2 голосов
/ 30 декабря 2010

Вы можете использовать тип данных DATE вместо времени данных DATETIME, если вы используете SQL Server 2008.

Или вы можете использовать функцию CONVERT для преобразования даты в строковый тип (VARCHAR, CHARи т. д.) тип данных.

Например,

CONVERT(VARCHAR, GETDATE(), 101)

производит это

12/29/2010

Подробнее о CONVERT форматах

0 голосов
/ 30 декабря 2010

Вы не можете сохранить его как Datetime, если у вас нет SQL Server 2008 и не используется тип данных Date

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