SQL Server 2008中的新日期数据类型
2008-09-04 10:02:27 来源:WEB开发网这里用一个示例来展示如何显示DATE的值
SET NOcount ON; DECLARE @D DATE = ’2001-03-1’; PRINT @D; select CONVERT(char(10),@D,120) DATEONLY, @D [DATE-N-TIME];
运行上述代码将会得到如下结果:
2001-03-01 DATEONLY DATE-N-TIME ---------- ----------------------- 2001-03-01 2001-03-01 00:00:00.000
这里你可以看到PRINT语句显示日期使用YYYY-MM-DD格式,但是select语句要求你使用CONVERT函数把DATE变量转换为YYYY-MM-DD格式,正如你所看到的,如果你使用select只显示一个DATE变量,最后的输出结果仍然包含时间部分,这个功能在所有新的日期和时间数据类型中是一致的。
TIME
SQL Server 2008现在有了一个TIME数据类型,它允许你只存储一个时间值而没有时间。如果想要存储一个特定的时间信息而不涉及具体的日期时,这将非常的有用。TIME数据类型存储使用24小时制,它并不关心时区,支持高达100纳秒的精确度。TIME数据类型支持从0到7不同的精度,就像DATETIME2格式,它的磁盘开销是3到5个字节,取决与精度。TIME列的长度与精度如下表所示:
图2
此处是一个如何使用不同的DATETIME2精度值来显示不同的时间格式的示例:
DECLARE @T0 time(0) = ’16:59:11.1234567’;
DECLARE @T1 time(1) = ’16:59:11.1234567’;
DECLARE @T2 time(2) = ’16:59:11.1234567’;
DECLARE @T3 time(3) = ’16:59:11.1234567’;
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接