我想在数据库中存储小时数。情况是这样的,我必须存储员工的最小总小时数,直到他标记为早出。例如,如果员工在办公室工作的总时间少于7:30,那么他/她早早离开。 什么应该是适当的数据类型?
答案 0 :(得分:3)
查看数据类型time
, available from SQL Server 2008.但请注意,这实际上是一种数据类型,指的是类型的一部分,例如datetime
- 因此它解释了时间,因此最多可达24小时。
如果你需要计算寿命(例如某人在工作多长时间),我总是建议有两个时间戳(例如datetime2
),然后用DATEDIFF()
计算差异。这样你将来也有更大的灵活性,因为你可以动态选择是否想要找到秒,分,小时等的差异。
答案 1 :(得分:1)
根据您的情况,您可能不需要存储超过24小时。在这种情况下,最佳匹配是时间数据类型。