How to get the time for a given datetime
value?
I have a datetime
in database like this:
2010-09-06 17:07:28.170
and want only the time portion:
17:07:28.170
Is there a function for that or something?
Just to add that from SQL Server 2008, there is a TIME datatype so from then on you can do:
SELECT CONVERT(TIME, GETDATE())
Might be useful for those that use SQL 2008+ and find this question.
In case of SQL Server, this should work
SELECT CONVERT(VARCHAR(8),GETDATE(),108) AS HourMinuteSecond
Try this
SELECT CAST(DataField AS time(7)) AS 'time'
Assuming the title of your question is correct and you want the time:
SELECT CONVERT(char,GETDATE(),14)
Edited to include millisecond.
CAST(CONVERT(CHAR(8),GETUTCDATE(),114) AS DATETIME)
IN SQL Server 2008+
CAST(GETUTCDATE() AS TIME)
来源:https://stackoverflow.com/questions/3656492/get-the-time-of-a-datetime-using-t-sql