Как получить время для данного datetime значения?
datetime
У меня есть datetime в базе данных, как это:
2010-09-06 17:07:28.170
и хотите только часть времени:
17:07:28.170
Есть ли функция для этого или что-то?
Просто добавьте, что в SQL Server 2008 есть тип данных TIME, так что теперь вы можете делать:
SELECT CONVERT(TIME, GETDATE())
Может быть полезно для тех, кто использует SQL 2008+ и находит этот вопрос.
В случае SQL Server это должно работать
SELECT CONVERT(VARCHAR(8),GETDATE(),108) AS HourMinuteSecond
Попробуйте это
SELECT CAST(DataField AS time(7)) AS 'time'
http://msdn.microsoft.com/en-us/library/bb677243.aspx
Предполагая, что заголовок вашего вопроса правильный и вам нужно время:
SELECT CONVERT(char,GETDATE(),14)
Отредактировано для включения миллисекунды.
CAST(CONVERT(CHAR(8),GETUTCDATE(),114) AS DATETIME)
В SQL Server 2008 +
CAST(GETUTCDATE() AS TIME)