sql-server – 在SQL Server数据库中存储时间间隔的最佳方法是什么?
发布时间:2021-02-20 04:47:20 所属栏目:MsSql 来源:互联网
导读:我有一个表,我想跟踪时间,所以有效的条目可能是: 1小时3分钟 47分钟 10小时 3分14秒 什么字段类型最适合用于此.我显然可以使用varchar.但是我认为可能会有更好的东西,因为我想运行查询以总计多个记录的时间量. 不要使用字符类型来存储日期/时间信息. 在SQL S
我有一个表,我想跟踪时间,所以有效的条目可能是: > 1小时3分钟 什么字段类型最适合用于此.我显然可以使用varchar.但是我认为可能会有更好的东西,因为我想运行查询以总计多个记录的时间量. 解决方法不要使用字符类型来存储日期/时间信息.在SQL Server 2008中,您有时间类型,如果您的时间间隔小于1天,则应该使用该类型.在以前的版本中,或者如果需要存储更大的间隔时间,则必须使用datetime或smalldatetime(取决于所需的精度). 另一个选择是选择一个时间单位 – 比如说分钟 – 只需使用一个int值来表示单位数.只需确保(a)您选择的单位实际上足够精确,可记录您需要跟踪的最小间隔,(b)实际的数字类型足够大以容纳您需要跟踪的最大间隔.一小时可能足以跟踪一天内的分钟数;另一方面,跟踪十年内的毫秒数将不得不将其存储为bigint. (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql2005 日志清理 SQL2005压缩清除日志的方法
- sqlserver中重复数据值只取一条的sql语句
- 更新数据库行而不在PostgreSQL 9.2中锁定表
- 数据库 – 在Microsoft Access(2010)中计算年和月的年龄
- SQL SERVER 2008 64位系统无法导入ACCESS/EXCEL怎么办
- sql-server – 从SqlServer管理工作室查询结果中导出正确的
- sql-server – 如何在SQL Azure中找到最大数据库空间和已用
- sql-server – 关于作为Head Blocker的SQL连接,我该怎么办?
- 一个删除指定表的所有索引和统计的过程
- 设置密码保护的SqlServer数据库备份文件与恢复文件的方法