Как укоротить секунды в TSQL? - PullRequest
7 голосов
/ 07 января 2012

У меня есть время, выберите приведение (SYSDATETIME () AS time) 14: 59: 09.2834595

Как можно обрезать секунды?14: 59

Ответы [ 4 ]

11 голосов
/ 07 января 2012

Описание

Вы можете использовать функцию T-SQL convert.

Образец

PRINT convert(varchar(5), SYSDATETIME(), 108)

даст вам hh:mm

Дополнительная информация

2 голосов
/ 30 марта 2017

Если вы хотите урезать секунды и при этом иметь тип данных T-SQL Date, сначала преобразуйте дату в минуты, начиная с даты «0», а затем добавьте минуты обратно в «0». Этот ответ не требует дополнительного разбора / преобразования. Этот метод работает, чтобы обрезать другие части, просто измените МИНУТУ. Пример: SELECT DATEADD(MINUTE, DATEDIFF(MINUTE, 0, '2016-01-01 23:22:56.997'), 0)

1 голос
/ 07 января 2012
select cast(left(cast(SYSDATETIME() AS time), 5) as time)
1 голос
/ 07 января 2012

Если вам нужно полностью отбросить секунды, вы можете использовать функцию DATEPART () (SQL Server), чтобы убрать часы и минуты, а затем сложить их вместе.(Мне больше нравится решение dknaack, если оно работает.)

SELECT CAST(DATEPART(hour, SYSDATETIME()) + ':' + DATEPART(minute, SYSDATETIME()) AS DATETIME)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...