SQLSERVER 时间格式大全
程序员文章站
2023-12-15 18:44:58
具体的网址倒是没保存,可是我这个人习惯把好的代码记起方法保存下来,现在贴出来,希望原作者体谅。 复制代码 代码如下: ---上个月月初第一天 select convert(...
具体的网址倒是没保存,可是我这个人习惯把好的代码记起方法保存下来,现在贴出来,希望原作者体谅。
---上个月月初第一天
select convert(varchar(12) , dateadd(mm,datediff(mm,0,dateadd(mm,-1,getdate())),0), 112 )
---上个月月末最后一天
select convert(varchar(12),dateadd(ms,-3,dateadd(mm,datediff(m,0,getdate()),0)), 112 )
--1. 显示本月第一天
select dateadd(mm,datediff(mm,0,getdate()),0)
select convert(datetime,convert(varchar(8),getdate(),120)+'01',120)
--2. 显示本月最后一天
select dateadd(day,-1,convert(datetime,convert(varchar(8),dateadd(month,1,getdate()),120)+'01',120))
select dateadd(ms,-3,dateadd(mm,datediff(m,0,getdate())+1,0))
--3. 上个月的最后一天
select dateadd(ms,-3,dateadd(mm,datediff(mm,0,getdate()),0))
--4. 本月的第一个星期一
select dateadd(wk,datediff(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate())),0)
--5. 本年的第一天
select dateadd(yy,datediff(yy,0,getdate()),0)
--6. 本年的最后一天
select dateadd(ms,-3,dateadd(yy,datediff(yy,0,getdate())+1,0))
--7. 去年的最后一天
select dateadd(ms,-3,dateadd(yy,datediff(yy,0,getdate()),0))
--8. 本季度的第一天
select dateadd(qq,datediff(qq,0,getdate()),0)
--9. 本周的星期一
select dateadd(wk,datediff(wk,0,getdate()),0)
--10. 查询本月的记录
select * from tablename where datepart(mm, thedate)=datepart(mm, getdate()) and datepart(yy, thedate) = datepart(yy, getdate())
--11. 查询本周的记录
select * from tablename where datepart(wk, thedate) = datepart(wk, getdate()) and datepart(yy, thedate) = datepart(yy, getdate())
--12 查询本季的记录 注:其中:getdate() 是获得系统时间的函数。
select * from tablename where datepart(qq, thedate) = datepart(qq, getdate()) and datepart(yy, thedate) = datepart(yy, getdate())
--13. 获取当月总天数:
select datediff(dd,getdate(),dateadd(mm, 1, getdate()))
select datediff(day,dateadd(mm, datediff(mm,'',getdate()), ''),dateadd(mm, datediff(mm,'',getdate()), '1900-02-01'))
--14. 获取当前为星期几
select datename(weekday, getdate())
select convert(varchar(12) , getdate(), 101 ) --12/28/2007
select convert(varchar(12) , getdate(), 102 ) --2007.12.28
select convert(varchar(12) , getdate(), 103 ) --28/12/2007
select convert(varchar(12) , getdate(), 104 ) --28.12.2007
select convert(varchar(12) , getdate(), 105 ) --28-12-2007
select convert(varchar(12) , getdate(), 106 ) --28 12 2007
select convert(varchar(12) , getdate(), 107 ) --12 28, 2007
select convert(varchar(12) , getdate(), 108 ) --10:06:33
select convert(varchar(12) , getdate(), 109 ) --12 28 2007 1
select convert(varchar(12) , getdate(), 110 ) --12-28-2007
select convert(varchar(12) , getdate(), 111 ) --2007/12/28
select convert(varchar(12) , getdate(), 112 ) --20071228
select convert(varchar(12) , getdate(), 113 ) --28 12 2007 1
select convert(varchar(12) , getdate(), 114 ) --10:07:36:623
select convert(varchar, getdate(), 120 ) --2007-12-28 10:08:56
select convert(varchar(10), getdate(), 120 ) --2007-12-28
select replace(replace(replace(convert(varchar, getdate(), 120 ),'-',''),' ',''),':','') --20071228101012
复制代码 代码如下:
---上个月月初第一天
select convert(varchar(12) , dateadd(mm,datediff(mm,0,dateadd(mm,-1,getdate())),0), 112 )
---上个月月末最后一天
select convert(varchar(12),dateadd(ms,-3,dateadd(mm,datediff(m,0,getdate()),0)), 112 )
--1. 显示本月第一天
select dateadd(mm,datediff(mm,0,getdate()),0)
select convert(datetime,convert(varchar(8),getdate(),120)+'01',120)
--2. 显示本月最后一天
select dateadd(day,-1,convert(datetime,convert(varchar(8),dateadd(month,1,getdate()),120)+'01',120))
select dateadd(ms,-3,dateadd(mm,datediff(m,0,getdate())+1,0))
--3. 上个月的最后一天
select dateadd(ms,-3,dateadd(mm,datediff(mm,0,getdate()),0))
--4. 本月的第一个星期一
select dateadd(wk,datediff(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate())),0)
--5. 本年的第一天
select dateadd(yy,datediff(yy,0,getdate()),0)
--6. 本年的最后一天
select dateadd(ms,-3,dateadd(yy,datediff(yy,0,getdate())+1,0))
--7. 去年的最后一天
select dateadd(ms,-3,dateadd(yy,datediff(yy,0,getdate()),0))
--8. 本季度的第一天
select dateadd(qq,datediff(qq,0,getdate()),0)
--9. 本周的星期一
select dateadd(wk,datediff(wk,0,getdate()),0)
--10. 查询本月的记录
select * from tablename where datepart(mm, thedate)=datepart(mm, getdate()) and datepart(yy, thedate) = datepart(yy, getdate())
--11. 查询本周的记录
select * from tablename where datepart(wk, thedate) = datepart(wk, getdate()) and datepart(yy, thedate) = datepart(yy, getdate())
--12 查询本季的记录 注:其中:getdate() 是获得系统时间的函数。
select * from tablename where datepart(qq, thedate) = datepart(qq, getdate()) and datepart(yy, thedate) = datepart(yy, getdate())
--13. 获取当月总天数:
select datediff(dd,getdate(),dateadd(mm, 1, getdate()))
select datediff(day,dateadd(mm, datediff(mm,'',getdate()), ''),dateadd(mm, datediff(mm,'',getdate()), '1900-02-01'))
--14. 获取当前为星期几
select datename(weekday, getdate())
select convert(varchar(12) , getdate(), 101 ) --12/28/2007
select convert(varchar(12) , getdate(), 102 ) --2007.12.28
select convert(varchar(12) , getdate(), 103 ) --28/12/2007
select convert(varchar(12) , getdate(), 104 ) --28.12.2007
select convert(varchar(12) , getdate(), 105 ) --28-12-2007
select convert(varchar(12) , getdate(), 106 ) --28 12 2007
select convert(varchar(12) , getdate(), 107 ) --12 28, 2007
select convert(varchar(12) , getdate(), 108 ) --10:06:33
select convert(varchar(12) , getdate(), 109 ) --12 28 2007 1
select convert(varchar(12) , getdate(), 110 ) --12-28-2007
select convert(varchar(12) , getdate(), 111 ) --2007/12/28
select convert(varchar(12) , getdate(), 112 ) --20071228
select convert(varchar(12) , getdate(), 113 ) --28 12 2007 1
select convert(varchar(12) , getdate(), 114 ) --10:07:36:623
select convert(varchar, getdate(), 120 ) --2007-12-28 10:08:56
select convert(varchar(10), getdate(), 120 ) --2007-12-28
select replace(replace(replace(convert(varchar, getdate(), 120 ),'-',''),' ',''),':','') --20071228101012