加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

Sqlserver获取时间格式

发布时间:2020-12-12 13:30:59 所属栏目:MsSql教程 来源:网络整理
导读:转自:http://blog.csdn.net/lwmjm/article/details/8216733 - --上个月月初第一天 select CONVERT(varchar(12),DATEADD(mm,DATEDIFF(mm,dateadd(mm,-1,getdate())),0),112 ) ---上个月月末最后一天 select CONVERT(varchar(12),dateadd(ms,-3,DATEDIFF(m,ge

转自:http://blog.csdn.net/lwmjm/article/details/8216733


---上个月月初第一天

select CONVERT(varchar(12),DATEADD(mm,DATEDIFF(mm,dateadd(mm,-1,getdate())),0),112 )
---上个月月末最后一天
select CONVERT(varchar(12),dateadd(ms,-3,DATEDIFF(m,getdate()),0)),112 )
--1. 显示本月第一天
SELECT DATEADD(mm,0)
select convert(datetime,convert(varchar(8),getdate(),120)+'01',120)
--2. 显示本月最后一天
select dateadd(day,convert(datetime,dateadd(month,1,120))
SELECT dateadd(ms,getdate())+1,0))
--3. 上个月的最后一天
SELECT dateadd(ms,0))
--4. 本月的第一个星期一
select DATEADD(wk,DATEDIFF(wk,dateadd(dd,6-datepart(day,0)
--5. 本年的第一天
SELECT DATEADD(yy,DATEDIFF(yy,0)
--6. 本年的最后一天
SELECT dateadd(ms,DATEADD(yy,0))
--7. 去年的最后一天
SELECT dateadd(ms,0))
--8. 本季度的第一天
SELECT DATEADD(qq,DATEDIFF(qq,0)
--9. 本周的星期一
SELECT DATEADD(wk,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())
--12 查询本季的记录 注:其中:GETDATE() 是获得系统时间的函数。
select * from tableName where DATEPART(qq,theDate) = DATEPART(qq,GETDATE())
--13. 获取当月总天数:
select DATEDIFF(dd,getdate()))
select datediff(day,datediff(mm,'',''),'1900-02-01'))
--14. 获取当前为星期几
SELECT DATENAME(weekday,getdate())
select CONVERT(varchar(12),101 ) --12/28/2007
select CONVERT(varchar(12),102 ) --2007.12.28
select CONVERT(varchar(12),103 ) --28/12/2007
select CONVERT(varchar(12),104 ) --28.12.2007
select CONVERT(varchar(12),105 ) --28-12-2007
select CONVERT(varchar(12),106 ) --28 12 2007
select CONVERT(varchar(12),107 ) --12 28,2007
select CONVERT(varchar(12),108 ) --10:06:33
select CONVERT(varchar(12),109 ) --12 28 2007 1
select CONVERT(varchar(12),110 ) --12-28-2007
select CONVERT(varchar(12),111 ) --2007/12/28
select CONVERT(varchar(12),112 ) --20071228
select CONVERT(varchar(12),113 ) --28 12 2007 1
select CONVERT(varchar(12),114 ) --10:07:36:623
select CONVERT(varchar,120 ) --2007-12-28 10:08:56
select CONVERT(varchar(10),120 ) --2007-12-28
select replace(replace(replace(CONVERT(varchar,120 ),'-',' ',':','') --20071228101012

?

前天:Select dateadd(day,-2,getdate())

明天 :Select dateadd(day,arial"> 规则如下:

1 101 美国 mm/dd/yyyy

2 102 ANSI yy.mm.dd

3 103 英国/法国 dd/mm/yy

4 104 德国 dd.mm.yy

5 105 意大利 dd-mm-yy

6 106 - dd mon yy

7 107 - mon dd,yy

8 108 - hh:mm:ss

- 9 或 109 (*)?? 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM)

10 110 美国 mm-dd-yy

11 111 日本 yy/mm/dd

12 112 ISO yymmdd

- 13 或 113 (*)?? 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h)

14 114 - hh:mi:ss:mmm(24h)

- 20 或 120 (*)?? ODBC 规范 yyyy-mm-dd hh:mm:ss[.fff]

- 21 或 121 (*)?? ODBC 规范(带毫秒) yyyy-mm-dd hh:mm:ss[.fff]

- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(不含空格)

- 130* 科威特 dd mon yyyy hh:mi:ss:mmmAM

- 131* 科威特 dd/mm/yy hh:mi:ss:mmmAM

????????? 关于Emaker中字段的格式转换和字段间的运算代码可以加到属性里的“格式转换(读出)”和“格式转换(写入)”,table字段设定里的“字段”位置也可以灵活加函数。比如:'AF'+ID 或者ID+'/'+PWD,convert(varchar(50),F1),

convert(int,%)-19110000 (读出)

convert(char(8),convert(int,%)+19110000) (写入)

实现行的合计运算等等。加入:%系统变量%,则是调用在Emaker 系统中设定的系统变量。

获取两个日期相差的天数:

?select datediff(d,'2012-05-10','2012-05-12')

两个字段拼接:

SELECT CAST(LastCargoNo AS VARCHAR(10))+'、'+ CAST(LastCargoName AS VARCHAR(10))? FROM Cargo

SQLServer 获取当前月份的总天数 逐过程 一看就明白? 分类:? SQL Server 2009-12-10 15:36393人阅读 评论 (0) 举报

--查询当前月份的天数 --思路当前月份+1,就是下个月,然后用下个月的1号减一,就得到当前月份的最后一天,这样就知道当前月份有多少天了 --用到的函数 getdate()当前的日期 dateadd() 在年月日中进行加减操作 year()日期中的年部分 month()日期中的月部分 datepart()取出日期中的某部分 --第一步将当前期日的月部分加一 select dateadd(mm,getdate()) --第二步获取加一后的日期的年和月 select 年=year(dateadd(mm,月=month(dateadd(mm,getdate())) --第三步拼接成当前月的下一个月的1号 select convert(varchar(4),year(dateadd(mm,getdate())))+'-'+convert(varchar(2),month(dateadd(mm,getdate())))+'-01' --第四步转成日期类型的 select 当前月的下一个月的1号=convert(datetime,convert(varchar(4),getdate())))+'-01') --第五步把上面得到的日期减一天得到当前月的最后一天 select 当前月的最后一天=dateadd(dd,getdate())))+'-01')) --最后一步拿到天数 select 当前月份总天数=datepart(dd,getdate())))+'-01')))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读