我希望以这种格式在SQL Server数据库中节省时间:
hh:mm
Run Code Online (Sandbox Code Playgroud)
而不是这个:
hh:mm:ss
Run Code Online (Sandbox Code Playgroud)
那可能吗?是否有一个独特的数据类型(我试图浏览数据类型列表,但未能找到;尝试也搜索MSDN,但没有找到).还有另外一种方法吗?我真的不希望存储第二个.
使用SQL Server 2012 提供的Format函数
select format(getdate(),'hh:mm')
Insert into sometable
(timepart)
values
(
format(getdate(),'hh:mm'))
Run Code Online (Sandbox Code Playgroud)
输出:
07:08
不,没有用于此的数据类型。最小的是time(0),精确到一秒。
SELECT
-- Returns time in the format hh:mm:ss
CAST(GETDATE() AS TIME(0))
;
Run Code Online (Sandbox Code Playgroud)
您可以添加检查约束以确保秒数始终等于 00,但我不确定这会增加什么值。