powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как обнулить время в переменной datetime не потеряв дату?
7 сообщений из 7, страница 1 из 1
Как обнулить время в переменной datetime не потеряв дату?
    #32013459
Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSSQL2000
...
Рейтинг: 0 / 0
Как обнулить время в переменной datetime не потеряв дату?
    #32013461
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например так

select convert(datetime, convert(char(10), getdate(), 120))
...
Рейтинг: 0 / 0
Как обнулить время в переменной datetime не потеряв дату?
    #32013488
Osya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT DATEADD(dd,DATEDIFF(dd,'',getdate()),'')
...
Рейтинг: 0 / 0
Как обнулить время в переменной datetime не потеряв дату?
    #32013492
George
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
select cast(cast(GetDate() as int) as datetime)
...
Рейтинг: 0 / 0
Как обнулить время в переменной datetime не потеряв дату?
    #32013508
Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последний вариант наиболее симпатичен.
Я правильно понимаю, что дата хранится в целой части числа, а время хранится в дробой? И таким образом просто отбрасывается дробная часть.
...
Рейтинг: 0 / 0
Как обнулить время в переменной datetime не потеряв дату?
    #32013522
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может и симпатичный, но неправильный

declare @d datetime
select @d='20010101 08:10'

select cast(cast(@d as int) as datetime)

select @d='20010101 18:10'

select cast(cast(@d as int) as datetime)
...
Рейтинг: 0 / 0
Как обнулить время в переменной datetime не потеряв дату?
    #32013585
Виктор Б
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну подумаешь - проблемы с округлением при конвертации типов...
Но идея то правильная: преобразуешь дату в вещественное число и от него берешь целую часть.
А потом от нее уже берешь дату.

select cast(floor(cast(getdate() as decimal(38,19))) as datetime)

Спасибо George и Александр за полезную инф.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как обнулить время в переменной datetime не потеряв дату?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]