0

我需要从小时和分钟创建时间。在mysql中有一个'Maketime'函数正是为此

mysql> SELECT MAKETIME(12,15,30);
    -> '12:15:30'

我应该在 sql server 中使用什么函数来执行此操作?

4

4 回答 4

3

SQL Server 2012 具有TIMEFROMPARTS

http://msdn.microsoft.com/en-us/library/hh213398.aspx

于 2013-08-06T12:02:50.077 回答
2

对于 SQL Server 的早期版本(2012 年之前),您只需使用DateAdd()函数组合。

SELECT DateAdd(hh, 12, DateAdd(mi, 15, DateAdd(ss, 30, 0)))

请注意,这将返回一个datetime值。如果您使用的是 2008 及更高版本,那么如果需要,您可以简单Cast()time使用。

于 2013-08-06T12:05:58.333 回答
1

你可以

dateadd(second, (12 * 3600) + (15 * 60) + 30, cast('00:00:00' as time))
于 2013-08-06T12:11:55.760 回答
0

我想这就是你要找的:

SELECT convert(datetime, '20:10:44', 108) -- hh:mm:ss

来源:http ://www.w3schools.com/sql/func_convert.asp

于 2013-08-06T12:07:27.120 回答