什么是正确的数据类型存储"工作时间"

时间:2015-08-03 12:44:18

标签: sql sql-server-2008

我正在收集用户的工作时间,格式如下:

1:30
0:45
2:15
8:00
6:19

在SQL SERVER中,我应该使用哪种数据类型来存储该值?我需要在某个时候总结这个值。

2 个答案:

答案 0 :(得分:7)

不要存储工作时间,存储工作时间。你的价值观将成为

Time int
---- ---
1:30 90
0:45 45
2:15 135
8:00 480
6:19 379

您可以将其转换为必要时显示,除以60并取余数。

另一方面,总结很容易。

答案 1 :(得分:4)

遗憾的是,SQL Server没有表示时间范围 1 的数据类型。我通常建议使用int列和一些命名,以便明确表示它是以秒/分钟/小时为单位 - 无论您需要多少粒度。

1 它有一个time数据类型,但它表示一天中的某个时间,而不是时间跨度。一起添加两天是没有意义的,因此,time数据类型不支持添加。