datetime类型简介
一个datetime型的字段可以存储的日期范围是从1753年1月1日第一毫秒到9999年12月31日最后一毫秒。
如果你不需要覆盖这么大范围的日期和时间,你可以使用smalldatetime型数据。它与datetime型数据同样使用,只不过它能表示的日期和时间
范围比datetime型数据小,而且不如datetime型数据精确。一个smalldatetime型的字段能够存储从1900年1月1日到2079年6月6日的日期,它只
能精确到秒。
datetime数据类型的操作:
1、日期的截取:
用extend截取日期的部分值,如:
start_time='2004-06-15 11:12:13'
本文以下出现的start_time均为datetime year to second
extend(start_time,year to month)='2004-06'
extend(start_time,hour to hour)='11'
要说明的是:以上函数返回的'2004-06'和'11'的类型仍然都是datetime型,无法直接进行加减操作。
2、日期的计算:
应用中经常会用到日期的加减,比如取当前日期的前一天或指定日期的前一天等,
这种操作不好说,还是看看下面的例子说明问题:
select
curretn
current year to day - interval(9) day to day,
current year to second - interval(9) minute to minute
from tab1
将会返回:
2004-06-13 19:30:42.000
2004-06-04
2004-06-13 19:21:42
类型转换:
前文提到的extend(start_time,hour to hour)='11'的结果仍然是datetime型,如果要进行类型转换的话:
1、extend(start_time,hour to hour)''将返回char型,extend(start_time,hour to
hour)''+0将返回integer型,extend(start_time,hour to hour)''+0.0将返回float型,虽然样子不太好看,不过效果不错
类似extend(start_time,hour to hour)''+0这样的方法可以在select中使用,但在create view的时候使用则会发生语法错
误(ids 9.4)。
2、用to_char函数:
to_char(start_time)将按原样返回start_time字段的字符形式,如:
select to_char(start_time, '%a %b %d, %y %r') from tab1
结果是:
wednesday july 23, 2003 18:45
其中:
%a:周、%b:月(英文)、%m月(数字)、%d:日、%y:年,%r:时间。
按照以上方法,大家可以将日期时间型按照自己喜欢的形状进行加工。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器