SQL中CONVERT转化日期函数的使用方法

SQL中CONVERT转化日期函数的使用方法
SQL中CONVERT转化日期函数的使用方法

SQLserver中用convert函数转换日期格式的方法

>SQL中CONVERT函数最常用的是使用convert转化长日期为短日期

如果只要取yyyy-mm-dd格式时间, 就可以用 convert(nvarchar(10),field,120)

120 是格式代码, nvarchar(10) 是指取出前10位字符.

SELECT CONVERT(nvarchar(10), getdate(), 120)

SELECT CONVERT(varchar(10), getdate(), 120)

SELECT CONVERT(char(10), getdate(), 120)

=======================================================

使用 CONVERT:

CONVERT (data_type[(length)], expression [, style])

select CONVERT(varchar, getdate(), 120 )

2004-09-12 11:06:08

select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),’-',”),’ ‘,”),’:',”)

20040912110608

select CONVERT(varchar(12) , getdate(), 111 )

2004/09/12

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

SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如:

select getdate()

整理了一下SQL Server里面可能经常会用到的日期格式转换方法:

举例如下:

select CONVERT(varchar, getdate(), 120 )

2004-09-12 11:06:08

select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') 20040912110608

select CONVERT(varchar(12) , getdate(), 111 )

2004/09/12

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

select getdate()

结果:2003-12-28 16:52:00.107

select convert(char(8),getdate(),112)

结果:20031228

select convert(char(8),getdate(),108)

结果:16:52:00

select convert(char(8),getdate(),112)

指日期格式

规则如下:

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 系统中设定的系统变量。

您可能感兴趣的文章:

?SQL Server 日期函数CAST 和CONVERT 以及在业务中的使用介绍

?SQL Server 日期相关资料详细介绍

?sqlserver获取当前日期的最大时间值

?sqlserver中如何查询出连续日期记录的代码

?sql 查询本年、本月、本日记录的语句,附SQL日期函数

?Sqlserver 常用日期时间函数

?根据日期知道当天是星期几的手动计算方法

?按日期选择最晚日期与最早日期对应的数的差值

?MSSQL 计算两个日期相差的工作天数的语句

?SQL Server自动生成日期加数字的序列号

?SQL 返回期间内的所有日期

?数据库日期加减处理

?sql语句中如何将datetime格式的日期转换为yy-mm-dd格式

?在SQL中使用convert函数进行日期的查询的代码

?SQL Server日期计算

?SQL Server各种日期计算方法(收藏)

?SqlServer中的日期与时间函数

SQL语句 日期函数详解与应用

sql查询月记录,一周记录,当天记录时间:2011-08-09 03:48来源:未知作者:admin 点击: 157 次SELECT * FROM 表WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111) ORDER BY dateandtime DESC 本月记录SELECT * FROM 表WHERE datediff(month,[dateadd],getdate())=0 本周记录SELECT * FROM 表WHERE datediff(week,[d SELECT * FROM 表WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111) ORDER BY dateandtime DESC 本月记录 SELECT * FROM 表WHERE datediff(month,[dateadd],getdate())=0 本周记录 SELECT * FROM 表WHERE datediff(week,[dateadd],getdate())=0 当天记录 SELECT * FROM 表WHERE datediff(day,[dateadd],getdate())=0 sql server中的时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000 3. datediff 返回跨两个指定日期的日期和时间边界数。 select datediff(day,'2004-09-01','2004-09-18') --返回:17 4. datepart 返回代表指定日期的指定日期部分的整数。 SELECT DATEPART(month, '2004-10-15') --返回10 5. datename 返回代表指定日期的指定日期部分的字符串 SELECT datename(weekday, '2004-10-15') --返回:星期五 6. day(), month(),year() --可以与datepart对照一下 select 当前日期=convert(varchar(10),getdate(),120) ,当前时间=convert(varchar(8),getdate(),114)

15-Excel中日期格式转换问题

Excel中日期格式转换问题 1.数字格式转年月日格式 工作表中出生年月日格式格式是如:198707141987090620090902如果想改成1987-7-14或改成1987年7月14日。 1、就用此函数插入一列如B列,B1=(LEFT(A1,4)&"-"&MID(A1,5,2)&"-"&RIGHT(A1,2));其它单元格可以用此公式自动填充,然后把此单元格设置成日期1987-7-14; 2、插入一列如B列,B1=(LEFT(A1,4)&"年"&MID(A1,5,2)&"月"&RIGHT(A1,2)&"日");其它单元格可以用此公式自动填充,然后把此单元格设置成日期1987年7月14日。 把这种格式2009.9.2转换成2009-09-02这样的格式:假如原始数据在A列从A1开始,则在B1输入公式=TEXT(SUBSTITUTE(A1,".","-"),"yyyy-mm-dd"),然后下拉复制公式即可。 2.在Excel中将非日期格式数据转换为日期格式 如果Excel表格中有大量的类似“19841006”、“19841029”非日期格式的数据要转换为日期格式,如“1984-10-6”,可以用分列的方法: 1).选择需要转换单元格或区域,单击菜单“数据→分列”,弹出“文本分列向导-3之步骤1”对话框。如果是Excel2007,则在功能区中选择“数据”选项卡,在“数据工具”组中,单击“分列”按钮。

2).单击两次“下一步”,在“文本分列向导-3之步骤3”中,在“列数据格式”中选择“日期”。还可以根据需要,在其后的下拉列表中选择一种日期格式。本例为默认的“YMD”格式。 3).单击“完成”按钮,Excel会在原单元格或区域中将数值格式的“19841006”和文本格式的“1984.10.6”转换为日期格式“1984-10-6”。 另外,对于“1984.10.6”文本格式的数据,还可以将“.”替换为“-”,也可以转换为日期格式。 3.将日期格式转换为数字格式 在日期后插入一列取函数=text(a1,"yyyymmddhhmm")yyyy表示年mm表示月dd表示日hh表示时mm表示分a1表示日期位置(第一行第一列),然后向下拖曳填充即可改变其他各行日期 4.Excel文本日期转换为日期格式 什么是序列号? Excel可将日期存储为可用于计算的序列号。默认情况下,1900年1月1日的序列号为1,2008年1月1日的序列号为39,448,这是因为它距1900年1月1日有39,448天。 2、若要将转换公式复制到相邻单元格的区域中,请选择在其中键入公式的单元格,然后拖动填充柄,使之覆盖大小与包含文本日期的单元格区域匹配的空单元格区域。 拖动填充柄之后,应有序列号与包含文本日期的单元格区域相对应的单元格区域。

日期格式转换

2011-04-22 15:10 Excel中日期格式转换问题 Excel中日期格式转换问题 1.数字格式转年月日格式 工作表中出生年月日格式格式是如:19870714 19870906 20090902如果想改成1987-7-14或改成1987年7月14日。 1、就用此函数插入一列如B列, B1=(LEFT(A1,4)&"-"&MID(A1,5,2)&"-"&RIGHT(A1,2)); 其它单元格可以用此公式自动填充,然后把此单元格设置成日期1987-7-14 ; 2、插入一列如B列,B1=(LEFT(A1,4)&"年"&MID(A1,5,2)&"月"&RIGHT(A1,2)&"日"); 其它单元格可以用此公式自动填充,然后把此单元格设置成日期1987年7月14 日。 把这种格式2009.9.2转换成2009-09-02这样的格式:假如原始数据在A 列从A1开始,则在B1输入公式=TEXT(SUBSTITUTE(A1,".","-"),"yyyy-mm-dd"),然后下拉复制公式即可。 2.在Excel中将非日期格式数据转换为日期格式 如果Excel表格中有大量的类似“19841006”、“19841029”非日期格式的数据要转换为日期格式,如“1984-10-6”,可以用分列的方法: 1).选择需要转换单元格或区域,单击菜单“数据→分列”,弹出“文本分列向导- 3之步骤1”对话框。如果是Excel 2007,则在功能区中选择“数据”选项卡,在“数据工具”组中,单击“分列”按钮。

SQL中CONVERT转化日期函数的使用方法

SQLserver中用convert函数转换日期格式的方法 >SQL中CONVERT函数最常用的是使用convert转化长日期为短日期 如果只要取yyyy-mm-dd格式时间, 就可以用 convert(nvarchar(10),field,120) 120 是格式代码, nvarchar(10) 是指取出前10位字符. SELECT CONVERT(nvarchar(10), getdate(), 120) SELECT CONVERT(varchar(10), getdate(), 120) SELECT CONVERT(char(10), getdate(), 120) ======================================================= 使用 CONVERT: CONVERT (data_type[(length)], expression [, style]) select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08 select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),’-',”),’ ‘,”),’:',”) 20040912110608 select CONVERT(varchar(12) , getdate(), 111 ) 2004/09/12 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

SQL Server 日期和时间函数

SQL Server 日期和时间函数 1、常用日期方法(下面的GetDate() = '2006-11-08 13:37:56.233') (1)DATENAME ( datepart ,date ) 返回表示指定日期的指定日期部分的字符串。Datepart详见下面的列表. SELECT DateName(day,Getdate()) –返回8 (2)DATEPART ( datepart , date ) 返回表示指定日期的指定日期部分的整数。 SELECT DATEPART(year,Getdate()) –返回2006 (3)DATEADD (datepart , number, date ) 返回给指定日期加上一个时间间隔后的新datetime 值。 SELECT DATEADD(week,1,GetDate()) --当前日期加一周后的日期 (4)DATEDIFF ( datepart , startdate , enddate ) 返回跨两个指定日期的日期边界数和时间边界数。 SELECT DATEDIFF(month,'2006-10-11','2006-11-01') --返回1 (5)DAY ( date ) 返回一个整数,表示指定日期的天datepart 部分。 SELECT day(GetDate()) –返回8 (6)GETDATE() 以datetime 值的SQL Server 2005 标准内部格式返回当前系统日期和时间。SELECT GetDate() --返回2006-11-08 13:37:56.233 (7)MONTH ( date ) 返回表示指定日期的―月‖部分的整数。 SELECT MONTH(GETDATE()) --返回11 (8)YEAR ( date ) 返回表示指定日期的―年‖部分的整数。 SELECT YEAR(GETDATE()) --返回2006 2、取特定日期 (1)获得当前日期是星期几 SELECT DateName(weekday,Getdate()) --Wednesday

Sql日期时间格式转换

Sql日期时间格式转换 sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007-02-01 08:02/*时间一般为getdate()函数或数据表里的字段*/ CONVERT(varchar(10), 时间一, 23) 结果:2007-02-01 /*varchar(10)表示日期输出的格式,如果不够长会发生截取*/ 语句及查询结果: Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06 Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06 Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06 Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06 Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06 Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46 Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06 Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16 Select CONVERT(varchar(100), GETDATE(), 12): 060516 Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937 Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967 Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47 Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157 Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16 Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47 Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250 Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006

有关日期提取格式转换和计算计算年龄

电子表格中有关日期的几个变换与计算 从身份证中提取出生日期=date(mid(A1,7,4),mid(A1,11,2),mid(A1,13,2))直接提取出日期。 身份证算年龄 如要算指定日期的年龄,则设A1文本格式的18位身份证号,B1为指定日期,在C1输入公式如下: =YEAR(TODAY())-V ALUE(MID(A1,7,4)) =YEAR(TODAY())-IF(LEN(TRIM(A1))>15,V ALUE(MID(A1,7,4)),V ALUE("1 9"&MID(A6,7,2))) 此公式15位、18位通用 到指定日期年龄 假设A1为身份号,15、18位都可,在B1显示此人年龄(至2009年底计算),公式如下: =2009-LEFT(IF(LEN(A1)=15,19&TEXT(MID(A1,7,6),"00-00-00"),TEXT(MID(A1, 7,8),"0000")),4) 到指定日期年龄 =DA TEDIF(RIGHT(TEXT(MID(A1,7,11)-500,"#-00-00,"),10),指定日期,"Y") =MOD(YEAR(指定日期)-MID(A1,7,LEN(A1)/2-5),190) 身份证号快速输入 方法一、单元格设置---------数字--------自定义------------类型

“输入41062100000000000#”(6位数加11个0加#,这样设置的单元格,只需要输入后12位就行了,前面的会自动添加) 方法二、用公式“=A1&B1做” 从身份证中提取数字串 例如,某人身份证为310123************(18位),输入到"A1"单元格,建议用把单元格改成"文本",不然会显示为科学计数法。 一、提取数字 方法一、在"B1"单元格输入:=left(A1,14),出现结果是“31012319010203”,然后在"C1"单元格里输入=right(B1,8),出现结果是“19010203”,基本工程完成了。 方法二、两个命令合并使用,在"D1"单元格里输入: =right(left(A1,14),8)。 方法三、函数【mid】在"E1"单元格输入公式=mid(A1,7,8)试试,就算出了正确的结果“19010203” 二、转化成日期格式函数【date】 例如,=date(1901,02,03) 输出结果为日期格式的“1901-2-3” 三、也可以这样:按照如下操作提取出年月日:提取年,在"F1"单元格输入:=mid(A1,7,4),输出结果为“1901”。提取月,在"G1"单元格输入:=mid(A1,11,2),输出结果为“02”。提取日,在"H1"单元格

Excel提取出生及日期格式转换

Excel提取出生及日期格式转换 年龄正确公式 =IF(LEN(B2)=15,YEAR(NOW())-1900-V ALUE(MID(B2,7,2)), IF(LEN(B2)=18,YEAR(NOW())-V ALUE(MID(B2,7,4)),"身份证错")) 根据身份证号码(15位和18位通用)自动提取性别和出生年月的自编公式,供需要的网友参考:说明:公式中的B2是身份证号 1、根据身份证号码求性别: =IF(LEN(B2)=15,IF(MOD(V ALUE(RIGHT(B2,3)),2)=0,"女","男"),IF(LEN(B2)=18,IF(MOD(V ALUE(MID(B2,15,3)),2)=0,"女","男"),"身份证错")) 2、根据身份证号码求出生年月: =IF(LEN(B2)=15,CONCATENATE("19",MID(B2,7,2),".",MID (B2,9,2)),IF(LEN(B2)=18,CONCATENATE(MID(B2,7,4),".", MID(B2,11,2)),"身份证错")) =MID(AF5,7,8) 3、根据身份证号码求年龄: =IF(LEN(B2)=15,YEAR(NOW())-1900-V ALUE(MID(B2,7,2)), IF(LEN(B2)=18,YEAR(NOW())-V ALUE(MID(B2,7,4)),"身份

证错")) 如何将yyyy-mm-dd转为yyyymm:函数法: =TEXT(A1,"emm") 电子表格YYMM转化YYYY-MM-DD ="20"&LEFT(C14,2)&"-"&RIGHT(C14,2)&"-"&"01" 如何将yyyy-mm-dd转为yyyymmdd =text(A1,"emmdd") 在excel中设A1=196303或者19630302,则 B1=TEXT(LEFT(A1,4)&"-"&MID(A1,5,2)&"-"&RIGHT(A1,2 ),"YYYY-MM-DD"),回车即可转换成1963-03或者 1963-03-02,,下拉可以批量转换。 excel日期yyyy-mm-dd转换成yyyy.mm.dd 查找-替换为.单击全部替换按钮。或者用公式:=text(a1,"yyyy.mm.dd")

unix时间戳与datetime类型时间之前的转换

unix时间戳与datetime类型时间之前的 转换 问题:unix时间戳与datetime类型时间之前的转换回答: #region 日期转换数字 /// /// 将Unix时间戳转换为DateTime类型时间 /// ///double 型数字/// DateTime public static System.DateTime ConvertIntDateTime(double d) System.DateTime time = System.DateTime.MinValue; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); time = startTime.AddSeconds(d); return time; /// /// 将c# DateTime时间格式转换为Unix时间戳格式 /// ///时间/// double

public static double ConvertDateTimeInt(System.DateTime time) double intResult = 0; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); intResult = (time startTime).TotalSeconds; return intResult; #endregion

Sql Server中的日期与时间函数

Sql Server中的日期与时间函数 1.GetDate( ) 返回系统目前的日期与时间'瞫濾#縶? 当前系统日期、时间select getdate() 2.DateAdd (interval,number,date) 以interval指定的方式,加上number之后的日期" 鐺e蠅5流 dateadd 在向指定日期加上一段时间的基础上,返回新的datetime 值,例如:向日期加上2天 select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000?礛娞>?? 3. datediff 返回跨两个指定日期的日期和时间边界数。 select datediff(day,'2004-09-01','2004-09-18') --返回:17? 4.DatePart (interval,date) 返回日期date中,interval指定部分所对应的整数值。 SELECT DATEPART(month, '2004-10-15') --返回10 5.datename 返回代表指定日期的指定日期部分的字符串 SELECT datename(weekday, '2004-10-15') --返回:星期五S 6.day(), month(),year() --可以与datepart对照一下 select 当前日期=convert(varchar(10),getdate(),120) ,当前时间=convert(varchar(8),getdate(),114) select datename(dw,'2004-10-15') select 本年第多少周=datename(week,'2004-10-15') 今天是周几=datename(weekday,'2004-10-15') 7.DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 与date1两个日期之间的差值date2-date1 8.DateName (interval,date) 返回日期date中,interval指定部分所对应的字符串名称 参数interval的设定值如下: Year Yy yyyy 年1753 ~ 9999 Quarter Qq q 季 1 ~ 4 Month Mm m 月 1 ~ 12 Day of year Dy y 一年中的第几日1-366 Day Dd d 日1-31 Weekday Dw w 一周中的第几日1-7 Week Wk ww 一年中的第几周0 ~ 51 Hour Hh h 时0 ~ 23 Minute Mi n 分钟0 ~ 59 Second Ss s 秒0 ~ 59 Millisecond Ms - 毫秒0 ~ 999 举例:/0R符?氦? DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值为514592 秒 DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值为5 天 DatePart('w','2005-7-25 22:56:32')返回值为2 即星期一(周日为1,周六为7) DatePart('d','2005-7-25 22:56:32')返回值为25即25号 DatePart('y','2005-7-25 22:56:32')返回值为206即这一年中第206天 DatePart('yyyy','2005-7-25 22:56:32')返回值为2005即2005年

Excel中如何将日期格式进行转换

在EXCEL中如何将日期格式转换 如何将格式转换成1900-01-01的格式? 如果日期所在单元格在A列,并从A1开始。 1、插入一辅助列B列, 2、在B1输入:=MID(A1,1,4)&-MID(A1,5,2)&-MID(A1,7,2)回车, 3、向下填充该公式。 4、选中B列→复制→粘贴→选择性粘贴→数值→确定 5、删除A列 在EXCEL中如何利用身份证号码提取出生时间 假设身份证号在A1,时间格式为1900-1-1 =IF(LEN(A1)=15,"19"&MID(A1,7,2)&"-"&MID(A1,9,2)&"-"&MID(A1,11,2),MID(A1,7,4)&"-"&MID(A1 ,11,2)&"-"&MID(A1,13,2)) 在EXCEL中如何利用身份证号码提取性别 =IF(LEN(A1)=15,IF(MOD(MID(A1,15,1),2)=1,"男","女") , IF(MOD(MID(A1,17,1),2)=1,"男","女") ) 在EXCEL中如何利用身份证号码计算周岁 假设身份证号在C1,时间格式为1900-1-1,出生时间为X 答案1: =DATEDIF(IF(LEN(A1)=15,"19"&MID(A1,7,2)&"-"&MID(A1,9,2)&"-"&MID(A1,11,2),MID(A1,7,4)&"-" &MID(A1,11,2)&"-"&MID(A1,13,2)),TODAY(),”y”) 简化之:=DATEDIF(X,TODAY(),”y”) 答案2: =TEXT(TODAY()-IF(LEN(C1)=15,"19"&MID(C1,7,2)&"-"&MID(C1,9,2)&"-"&MID(C1,11,2),MID(C1,7,4) &"-"&MID(C1,11,2)&"-"&MID(C1,13,2 )),"yy") 简化之:=TEXT(TODAY()-X,”yy”) 在EXCEL中如何利用身份证号码计算周岁 假设身份证号在C1: =IF(C1="","",IF(IF(LEN(C1)=15,"19"&MID(C1,7,2)&"-"&MID(C1,9,2)&"-"&MID(C1,11,2),MID(C1,7,4) &"-"&MID(C1,11,2)&"-"&MID(C1,13,2))>"2009-12-31","",TEXT(TODAY()-IF(LEN(C1)=15,"19"&MID( C1,7,2)&"-"&MID(C1,9,2)&"-"&MID(C1,11,2),MID(C1,7,4)&"-"&MID(C1,11,2)&"-"&MID(C1,13,2))," yy")))

常用比较日期的SQL语句

sql server日期比较日期查询常用语句 关键字: sql sql server日期比较日期查询常用语句 通常,你需要获得当前日期和计算一些其他的日期,例如,你的程序可能需要判断一个月的第一天或者最后一天。你们大部分人大概都知道怎样把日期进行分割(年、月、日等),然后仅仅用分割出来的年、月、日等放在几个函数中计算出自己所需要的日期!在这篇文章里,我将告诉你如何使用DATEADD和DATEDIFF函数来计算出在你的程序中可能你要用到的一些不同日期。 在使用本文中的例子之前,你必须注意以下的问题。大部分可能不是所有例子在不同的机器上执行的结果可能不一样,这完全由哪一天是一个星期的第一天这个设置决定。第一天(DATEFIRST)设定决定了你的系统使用哪一天作为一周的第一天。所有以下的例子都是以星期天作为一周的第一天来建立,也就是第一天设置为7。假如你的第一天设置不一样,你可能需要调整这些例子,使它和不同的第一天设置相符合。你可以通过@@DATEFIRST函数来检查第一天设置。 为了理解这些例子,我们先复习一下DATEDIFF和DATEADD函数。DATEDIFF函数计算两个日期之间的小时、天、周、月、年等时间间隔总数。DATEADD函数计算一个日期通过给时间间隔加减来获得一个新的日期。要了解更多的DATEDIFF和DATEADD函数以及时间间隔可以阅读微软联机帮助。 使用DATEDIFF和DATEADD函数来计算日期,和本来从当前日期转换到你需要的日期的考虑方法有点不同。你必须从时间间隔这个方面来考虑。比如,从当前日期到你要得到的日期之间有多少时间间隔,或者,从今天到某一天(比如1900-1-1)之间有多少时间间隔,等等。理解怎样着眼于时间间隔有助于你轻松的理解我的不同的日期计算例子。 一个月的第一天 第一个例子,我将告诉你如何从当前日期去这个月的最后一天。请注意:这个例子以及这篇文章中的其他例子都将只使用DATEDIFF和DATEADD函数来计算我们想要的日期。每一个例子都将通过计算但前的时间间隔,然后进行加减来得到想要计算的日期。 这是计算一个月第一天的SQL 脚本: SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 我们把这个语句分开来看看它是如何工作的。最核心的函数是getdate(),大部分人都知道这个是返回当前的日期和时间的函数。下一个执行的函数DATEDIFF(mm,0,getdate())是计算当前日期和"1900-01-01 00:00:00.000"这个日期之间的月数。记住:时期和时间变量和毫秒一样是从"1900-01-01 00:00:00.000"开始计算的。这就是为什么你可以在DATEDIFF 函数中指定第一个时间表达式为"0"。下一个函数是DATEADD,增加当前日期到"1900-01-01"的月数。通过增加预定义的日期"1900-01-01"和当前日期的月数,我们可以获得这个月的第一天。另外,计算出来的日期的时间部分将会是"00:00:00.000"。 这个计算的技巧是先计算当前日期到"1900-01-01"的时间间隔数,然后把它加到"1900-01-01"上来获得特殊的日期,这个技巧可以用来计算很多不同的日期。下一个例子也

sql时间格式转换大全

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

Excel中日期格式转换问题

Excel中日期格式转换问题 1.数字格式转年月日格式 工作表中出生年月日格式格式是如:19870714 19870906 20090902如果想改成1987-7-14或改成1987年7月14日。 1、就用此函数插入一列如B列, B1=(LEFT(A1,4)&"-"&MID(A1,5,2)&"-"&RIGHT(A1,2)); 其它单元格可以用此公式自动填充,然后把此单元格设置成日期1987-7-14 ; 2、插入一列如B列,B1=(LEFT(A1,4)&"年"&MID(A1,5,2)&"月"&RIGHT(A1,2)&"日"); 其它单元格可以用此公式自动填充,然后把此单元格设置成日期1987年7月14 日。 把这种格式2009.9.2转换成2009-09-02这样的格式:假如原始数据在A列从 A1开始,则在B1输入公式=TEXT(SUBSTITUTE(A1,".","-"),"yyyy-mm-dd"),然后下拉复制公式即可。 2.在Excel中将非日期格式数据转换为日期格式 如果Excel表格中有大量的类似“19841006”、“19841029”非日期格式的数据要转换为日期格式,如“1984-10-6”,可以用分列的方法: 1).选择需要转换单元格或区域,单击菜单“数据→分列”,弹出“文本分列向导- 3之步骤1”对话框。如果是Excel 2007,则在功能区中选择“数据”选项卡,在“数据工具”组中,单击“分列”按钮。 2).单击两次“下一步”,在“文本分列向导- 3之步骤3”中,在“列数据格式”中选择“日期”。还可以根据需要,在其后的下拉列表中选择一种日期格式。本例为默认的“YMD”格式。 3).单击“完成”按钮,Excel会在原单元格或区域中将数值格式的“19841006”和文本格式的“1984.10.6”转换为日期格式“1984-10-6”。 另外,对于“1984.10.6”文本格式的数据,还可以将“.”替换为“-”,也可以转换为日期格式。 3.将日期格式转换为数字格式 在日期后插入一列取函数 =text(a1,"yyyymmddhhmm") yyyy表示年mm表示月dd表示日hh表示时mm表示分 a1表示日期位置(第一行第一列),然后向下拖曳填充即可改变其他各行日期 4.Excel文本日期转换为日期格式

SQL 中使用CONVERT转日期格式

将某种数据类型的表达式显式转换为另一种数据类型。由于某些需求经常用到取日期格式的不同.现以下可在SQL Server中将日期格式化. SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。 在表中,左侧的两列表示将datetime 或smalldatetime 转换为字符数据的style 值。给style 值加100,可获得包括世纪数位的四位年份(yyyy)。 不带世纪数位(yy) 带世纪数位(yyyy) 标准 输入/输出** - 0 或100 (*) 默认值mon dd yyyy hh:miAM(或PM) 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 * 默认值(style 0 或100、9 或109、13 或113、20 或120、21 或121)始终返回世纪数位(yyyy)。** 当转换为datetime 时输入;当转换为字符数据时输出。 *** 专门用于XML。对于从datetime 或smalldatetime 到character 数据的转换,输出格式如表中所示。对于从float、money 或smallmoney 到character 数据的转换,输出等同于style 2。对于从real 到character 数据的转换,输出等同于style 1。 重要默认情况下,SQL Server 根据截止年份2049 解释两位数字的年份。即,两位数字的年份49 被解释为2049,而两位数字的年份50 被解释为1950。许多客户端应用程序(例如那些基于OLE 自动化对象的客户端应用程序)都使用2030 作为截止年份。SQL Server 提供一个配置选项("两位数字的截止年份"),借以更改SQL Server 所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。 当从smalldatetime 转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从datetime 或smalldatetime 值进行转换时,可以通过使用适当的char 或varchar 数据类型长度来截断不需要的日期部分。 下表显示了从float 或real 转换为字符数据时的style 值。

SQL日期与时间函数详解

SQL日期与时间函数2009年02月04日星期三上午10:50sql server日期时间函数 Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000 3. datediff 返回跨两个指定日期的日期和时间边界数。 select datediff(day,'2004-09-01','2004-09-18') --返回:17 4. datepart 返回代表指定日期的指定日期部分的整数。 SELECT DATEPART(month, '2004-10-15') --返回10 5. datename 返回代表指定日期的指定日期部分的字符串 SELECT datename(weekday, '2004-10-15') --返回:星期五 6. day(), month(),year() --可以与datepart对照一下 select 当前日期=convert(varchar(10),getdate(),120) ,当前时间=convert(varchar(8),getdate(),114) select datename(dw,'2004-10-15') select 本年第多少周=datename(week,'2004-10-15') ,今天是周几=datename(weekday,'2004-10-15') 函数参数/功能 GetDate( ) 返回系统目前的日期与时间 DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 与date1两个日期之间的差值date2-date1 DateAdd (interval,number,date) 以interval指定的方式,加上number之后的日期 DatePart (interval,date) 返回日期date中,interval指定部分所对应的整数值 DateName (interval,date) 返回日期date中,interval指定部分所对应的字符串名称 参数interval的设定值如下: 值缩写(Sql Server)Access 和ASP 说明 Year Yy yyyy 年1753 ~ 9999 Quarter Qq q 季1 ~ 4 Month Mm m 月1 ~ 12 Day of year Dy y 一年的日数,一年中的第几日1-366 Day Dd d 日,1-31

相关文档
最新文档