码迷,mamicode.com
首页 > 其他好文 > 详细

CONVERT(varchar(12) , getdate(), 112 )

时间:2014-09-03 14:57:36      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:style   color   使用   strong   ar   art   sp   on   c   

Sqlserver中经常 要操作一些时间类型的字段转换,我又不太记得住,所以搜集了以下的一些SqlserverConvertDateTime相关的资料发表在自己的小站里,方便自己以后要用的时候寻找,望对大家也有帮助.

将sqlserver中table表的[datetime]字段值‘2007-11-0716:41:35.033’ 改为‘2007-11-0700: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) , getdate(), 102 )
2004.09.12
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 108 )
11:06:08
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177
------------------------------------------------------------

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

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

--长日期格式:yyyy年mm月dd日 
SELECTSTUFF(STUFF(CONVERT(char(8),@dateTime,112),5,0,N‘年
‘),8,0,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
SELECTCONVERT(char(11),@dateTime,120)+CONVERT(char(12),@dateTime,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),@dt,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,
CONVERT(char(8),
DATEADD(Month,
DATEPART(Quarter,@dt)*3-Month(@dt),
@dt),
120)
+CASE WHEN DATEPART(Quarter,@dt) in(1,4)
THEN ‘31‘ELSE ‘30‘ END)
--C. 季度的最后一天(直接推算法)

SELECT DATEADD(Day,-1,
CONVERT(char(8),
DATEADD(Month,
1+DATEPART(Quarter,@dt)*3-Month(@dt),
@dt),
120)+‘1‘)
--3.指定日期所在月份的第一天或最后一天

--A. 月的第一天

SELECTCONVERT(datetime,CONVERT(char(8),@dt,120)+‘1‘)
--B. 月的最后一天

SELECTDATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+‘1‘)
--C. 月的最后一天(容易使用的错误方法)

SELECT DATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))
--4.指定日期所在周的任意一天

SELECTDATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)
--5.指定日期所在周的任意星期几

--A. 星期天做为一周的第
1天
SELECTDATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)
--B. 星期一做为一周的第
1天
SELECTDATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)

CONVERT(varchar(12) , getdate(), 112 )

标签:style   color   使用   strong   ar   art   sp   on   c   

原文地址:http://blog.csdn.net/jiangliqing1234/article/details/39027703

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!