get the date and time for today at midnight and add to it

Есть ли sql-команда для получения сегодняшней даты в полночь и возможности добавить к ней количество минут?

25
задан Adam Wenger 9 December 2011 в 15:51
поделиться

1 ответ

Necromancing:

самый простой/самый быстрый путь:

SELECT 
    DATEADD(minute, 1, 
        CAST(FLOOR(CAST(CURRENT_TIMESTAMP AS float)) AS datetime)   
    )

или с UTC:

SELECT 
    DATEADD(minute, 1, 
        CAST(FLOOR(CAST( GETUTCDATE() AS float)) AS datetime)   
    )

Это работает, потому что в SQL-сервере, дата и время является значением плавающим, целая часть, представляющая дни с 01.01.1900, подцелая часть представляет процент целого (24-го) дня.

Поэтому, если Вы раунд вниз (floor) число с плавающей запятой к целому числу, Вы получаете разовое полуночью.
1900-01-01T00:00:00.000 являющийся 0.

0
ответ дан 28 November 2019 в 17:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: