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

Convert DateTime 格式的转换

发布时间:2020-12-12 15:35:41 所属栏目:MsSql教程 来源:网络整理
导读:将sqlserver中table表的[datetime]字段值‘2007-11-07 16:41:35.033’ 改为‘2007-11-07 00:00:00‘去除了时分秒.[datetime]字段要为datetime类型的哦. UPDATE table SET [datetime]= Convert(char(11),[datetime],120) 获取当前日期利用 convert 来

将sqlserver中table表的[datetime]字段值‘2007-11-07 16:41:35.033’ 改为‘2007-11-07 00:00:00‘去除了时分秒.[datetime]字段要为datetime类型的哦. UPDATE table SET [datetime]= Convert(char(11),[datetime],120)

获取当前日期利用 convert 来转换成我们需要的datetime格式.
select CONVERT(varchar(12),getdate(),112 )
20040912
------------------------------------------------------------
select CONVERT(varchar(12),102 )
2004.09.12
------------------------------------------------------------
select CONVERT(varchar(12),101 )
09/12/2004
------------------------------------------------------------
select CONVERT(varchar(12),103 )
12/09/2004
------------------------------------------------------------
select CONVERT(varchar(12),104 )
12.09.2004
------------------------------------------------------------
select CONVERT(varchar(12),105 )
12-09-2004
------------------------------------------------------------
select CONVERT(varchar(12),106 )
12 09 2004
------------------------------------------------------------
select CONVERT(varchar(12),107 )
09 12,2004
------------------------------------------------------------
select CONVERT(varchar(12),108 )
11:06:08
------------------------------------------------------------
select CONVERT(varchar(12),109 )
09 12 2004 1
------------------------------------------------------------
select CONVERT(varchar(12),110 )
09-12-2004
------------------------------------------------------------
select CONVERT(varchar(12),113 )
12 09 2004 1
------------------------------------------------------------
select CONVERT(varchar(12),114 )
11:06:08.177
------------------------------------------------------------

declare @dateTime DateTime--定义一个datetime的变量
set @dateTime=getdate(); --获取系统当前时间,并赋值给@dateTime字段

--短日期格式:yyyy-m-d
SELECT REPLACE(CONVERT(varchar(10),@dateTime,120),N'-0','-')

--长日期格式:yyyy年mm月dd日
SELECT STUFF(STUFF(CONVERT(char(8),112),5,N'年'),8,N'月')+N'日'

--长日期格式:yyyy年m月d日
SELECT DATENAME(Year,@dateTime)+N'年'+CAST(DATEPART(Month,@dateTime) AS varchar)+N'月'+DATENAME(Day,@dateTime)+N'日'

--完整日期+时间格式:yyyy-mm-dd hh:mi:ss:mmm
SELECT CONVERT(char(11),120)+CONVERT(char(12),114)

------------------------------------------------------------------------------------------------

2、日期推算处理 DECLARE @dt datetime SET @dt=GETDATE() DECLARE @number int SET @number=3 --1.指定日期该年的第一天或最后一天 --A. 年的第一天 SELECT CONVERT(char(5),@dt,120)+'1-1' --B. 年的最后一天 SELECT CONVERT(char(5),120)+'12-31' --2.指定日期所在季度的第一天或最后一天 --A. 季度的第一天 SELECT CONVERT(datetime,CONVERT(char(8),DATEADD(Month,DATEPART(Quarter,@dt)*3-Month(@dt)-2,@dt),120)+'1') --B. 季度的最后一天(CASE判断法) SELECT CONVERT(datetime,@dt)*3-Month(@dt),120) +CASE WHEN DATEPART(Quarter,@dt) in(1,4) THEN '31'ELSE '30' END) --C. 季度的最后一天(直接推算法) SELECT DATEADD(Day,-1,1+DATEPART(Quarter,120)+'1') --3.指定日期所在月份的第一天或最后一天 --A. 月的第一天 SELECT CONVERT(datetime,120)+'1') --B. 月的最后一天 SELECT DATEADD(Day,1,120)+'1') --C. 月的最后一天(容易使用的错误方法) SELECT DATEADD(Month,DATEADD(Day,-DAY(@dt),@dt)) --4.指定日期所在周的任意一天 SELECT DATEADD(Day,@number-DATEPART(Weekday,@dt) --5.指定日期所在周的任意星期几 --A. 星期天做为一周的第1天 SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt) --B. 星期一做为一周的第1天 SELECT DATEADD(Day,@dt)+@@DATEFIRST-2)%7-1,@dt)

(编辑:李大同)

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

    推荐文章
      热点阅读