从时间数据类型获取分钟部分

Icy*_*now 6 sql-server-2008 sql-server datetime

使用时间数据类型(我使用的是 Microsoft SQL Server 2008),有没有办法只取出它的分钟部分?我试图将时间传递给 datepart 和 datediff 函数,但都拒绝工作。

示例:我想从 04:15 得到 15

Tho*_*ger 12

select datepart(minute, '04:15')
Run Code Online (Sandbox Code Playgroud)

利用DATEPART()函数,minute作为日期部分参数。

declare @current_time time

select @current_time = getdate()

select datepart(minute, @current_time) as current_minute
Run Code Online (Sandbox Code Playgroud)

DATEPART 上的 BOL 参考

  • 我强烈推荐明确指定日期部分的习惯,例如`MINUTE` 而不是`MI`。有太多的速记格式模棱两可,无法证明节省一些击键是合理的。在我流行的“踢出的坏习惯”演示文稿中,这件事有自己的专用幻灯片。:-) (3认同)