MSSQL中是否有任何数据类型可以让我仅存储时间值的小时和分钟?
答案 0 :(得分:3)
不完全是。
您能获得的最接近的是time(0)
:
Specified scale | Result (precision, scale)
---------------------------------------------
time(0) | (8,0)
字符长度::最小8个位置(hh:mm:ss)至16个最大位置(hh:mm:ss.nnnnnnn)。 [...]
如果您确实只需要小时和分钟部分,那么您也可以有两个tinyint
列。
如果您的问题仅与显示有关,请在ToString("HH:mm")
上使用DateTime
。如果仅存储时间,则会在.net中获得一个TimeSpan
,因此在此示例中我将创建一个新的DateTime实例:
var dateTime = new DateTime(timeSpan.Ticks);
var formattedString = dateTime.ToString("HH:mm");