1.where year(A) = year(B) AND month (A) = month(B) AND day(A) = day(B) 实际上可以用更简洁的方式实现
where datediff(day,A,B) = 0
同样,要比较A、B是否同年同月的方法是:
where datediff(month,A,B) = 0
2.在 ms sql server 的日期函数中可以用"0"来代替日期,"0"表示的日期是1900-01-01 00:00:000。
3.去掉getdate() 函数返回的时、分、秒信息 dateadd(day,datediff(day,0,getdate()),0)
4.显示getdate() 函数返回的时间是星期几
select datename(weekday,getdate()) 这个结果与 @@datefirst 的值有关
5.SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm ,如果我们需要不同的日期格式如:2005/10/27,2005-10-27,
可以通过下面这个函数实现:
select CONVERT(varchar(10) , 时间, 120 )
这里的120,可以用101到114之间的数值代替(108获取的是时间)。
当然,在有几种情况下,要将varchar(10)换成varchar(12)才能完整的显示出来。
下面给出几个常用的数值:
120 结果:2005-10-27
102 结果:2005.10.25
111 结果:2005/10/27
101 结果:10/27/2005
112 结果:20051027