将日期时间拆分为两个日期时间 SQL 列是最佳做法吗?
例如,2010-12-17 01:55:00.000 分为两列,
- 一列包含日期时间 日期部分:2010-12-17 00:00:00.000
- 一列包含日期时间 时间部分:1900-01-01 01:55:00.000
有人告诉我这是最佳实践,因为在某些时候 SQL 2000 不允许将时间放入日期中?甚至有数据存储标准来强制执行此操作,并且一些公司已确保以这种方式存储所有数据以符合某些数据存储标准?
如果是这种情况,我敢肯定有人在这里听说过,这听起来很熟悉吗?
最佳答案
在 sql server 2008 中,你有日期和时间数据类型,所以这不是问题。即使在 sql server 6 和 7 中,datetime 始终允许时间
人们拆分它的原因是因为对于 1 列中的所有内容,返回任何一天下午 3 点到 4 点之间下达的所有订单的查询需要扫描,而对于时间列,这可以通过查找(很多,很多更快)
关于sql - 在 SQL Server 中,将时间和日期拆分为两个单独的日期列是最佳做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4473769/