SQL 语句获取日期 核心提示:本教程为大家介绍SQL 语句如何获取特定的日期。 SQL 语句获取特定日期 1.一个月第一天的 Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 2.本周的星期一 Select DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) 3.一年的第一天 Select DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) 4.季度的第一天 Select DATEADD(qq, DATEDIFF(qq,0,getdate()), 0) 5.当天的半夜 Select DATEADD(dd, DATEDIFF(dd,0,getdate()), 0) 6.上个月的最后一天 Select dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) 7.去年的最后一天 Select dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)) 8.本月的最后一天 Select dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) 9.本年的最后一天 Select dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0)) 10.本月的第一个星期一 select DATEADD(wk, DATEDIFF(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0) 返回当前日期和时间 通过函数GETDATE(),你可以获得当前的日期和时间。函数GETDATE()可以用来作为 DATEDIME 型字段的缺省值。这对插入记录时保存当时的时间是有用的。要建立一个表,其中的记录包含有当前的日期和时间,可以添加一个 DATETIME 型字段,指定其缺省值为函数GETDATE()的返回值,就象这样: Create TABLE site_log ( username VARCHAR(40), useractivity VARCHAR(100), entrydate DATETIME DEFAULT GETDATE()) 转换日期和时间 函数GETDATE()的返回值在显示时只显示到秒。实际上,SQL Sever 内部时间可以精确到毫秒级(确切地说,可以精确到 3.33 毫秒)。 要得到不同格式的日期和时间,你需要使用函数CONVERT()。例如,当下面的这个语句执行时,显示的时间将包括毫秒: Select CONVERT(VARCHAR(30),GETDATE(),9) 注意例子中数字 9 的使用。这个数字指明了在显示日期和时间时使用哪种日期和时间格式。当这个语句执行时,将显示如下的日期和时间: Nov 30 1997 3:29:55:170AM (1 row(s) affected) 在函数CONVERT()中你可以使用许多种不同风格的日期和时间格式。下表显示了所有的格式。 日期和时间的类型: 类型值 标准 输出 0 Default mon dd yyyy hh:miAM 1 USA mm/dd/yy 2 ANSI yy.mm.dd 3 Briti...