在SQL Server中获得不包含时间部分的日期

在本文中,GetDate()获得的日期由两部分组成,分别是今天的日期和当时的时间: Select GetDate() 

  用DateName()就可以获得相应的年、月、日,然后再把它们连接起来就可以了: 

  Select Datename(year,GetDate())+'-'+Datename 

  (month,GetDate())+'-'+Datename(day,GetDate()) 

  另外,DateName()还可以获得到小时、时间、秒、星期几、第几周,分别如下: 

  Select Datename(hour,GetDate()) 

  Select Datename(minute,GetDate()) 

  Select Datename(second,GetDate()) 

  Select Datename(weekDay,GetDate()) 

  Select Datename(week,GetDate()) 

  SQL中的日期类型DateTime的默认格式就是yyyy-mm-dd hh:mi:ss: mmm,可大多数的情况我们只想得到他的日期部分,而不许要后面的时间。上一篇中提到用Datename()函数来截取拼接出不包含时间部分的日期,现在再说一种方法,更加简单的获取到不包含时间的日期! 

  使用Convert()函数: 

  select convert(char(10),GetDate(),120) as Date 

  * 第3个参数就是用来设置日期类型数据的显示样式的,下面介绍几种样式的参数: 

  100 mm dd yyyy 

  101 mm/dd/yyyy 

  102 yyyy.mm.dd 

  103 dd/mm/yyyy 

  106 dd mm yyyy 

  108 hh:mi:ss(时间) 

  111 yyyy/mm/dd 

  112 yyyymmdd 

  120 yyyy-mm-dd 

  大家可以发现,用这种方法获得日期部分将会更加方便,与这种方法比较Datename()函数的好处就是在于得到日期的具体部分。

posted on 2012-02-20 11:15  shine0210  阅读(527)  评论(0编辑  收藏  举报

导航