Sql语言中的日期格式化
日期格式化
View Code
1 lect CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM 2 Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 3 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 4 Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06 5 Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06 6 Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06 7 Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06 8 Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06 9 Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46 10 Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM 11 Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06 12 Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16 13 Select CONVERT(varchar(100), GETDATE(), 12): 060516 14 Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937 15 Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967 16 Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47 17 Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157 18 Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM 19 Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16 20 Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47 21 Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250 22 Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM 23 Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006 24 Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16 25 Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006 26 Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006 27 Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006 28 Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006 29 Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006 30 Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49 31 Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM 32 Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006 33 Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16 34 Select CONVERT(varchar(100), GETDATE(), 112): 20060516 35 Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513 36 Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547 37 Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49 38 Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700 39 Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827 40 Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM 41 Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM 42 43 常用: 44 Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46 45 Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47 46 Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49 47 Select CONVERT(varchar(100), GETDATE(), 12): 060516 48 Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
-------------------------日期时间类型--------------------------------- ---T-SQL YEAR,MONTH,DAY函数均一INT 数据类型的格式返回特定日期的年度信息. SELECT 'YEAR NUMBER' = YEAR(GETDATE()) SELECT 'YEAR NUMBER' = MONTH(GETDATE()) SELECT 'YEAR NUMBER' = DAY(GETDATE()) --获取日期时间值部分DATEPART DATEPART(DATEPART,DATE数据) --DATEPART : 特定的要返回的数据的格式代码 --date数据: 一个可以解析为TIME ,DATE ,SMALLDATETIME,DATETIME DATETIME2的值的表达式、列表达式、用户定义的变量或字符串文字 SELECT DATEPART(YEAR,GETDATE()) AS '年份1' SELECT DATEPART(YYYY,GETDATE()) AS '年份2' SELECT DATEPART(YY,GETDATE()) AS '年份3' -- 日期加法DATEADD -- DATEADD函数将某个日期加上一个特定的时间间隔值后返回 DATETIME数据类型的值 --1语法 DATEADD(DATEPART,NUMBER,DATE数据) select top 100 indate 订单日期,DATEADD(DAY,14,InDate) '相加后的日期' , * from dbo.SOMaster with(nolock) order by InDate /* 订单日期 相加后的日期 2010-09-23 00:11:59.000 2010-10-07 00:11:59.000 2010-09-23 00:12:29.000 2010-10-07 00:12:29.000 2010-09-23 00:12:57.000 2010-10-07 00:12:57.000 2010-09-23 00:21:21.000 2010-10-07 00:21:21.000 2010-09-23 00:23:57.000 2010-10-07 00:23:57.000 2010-09-23 00:27:06.000 2010-10-07 00:27:06.000 2010-09-23 00:32:11.000 2010-10-07 00:32:11.000 2010-09-23 00:47:11.000 2010-10-07 00:47:11.000 2010-09-23 00:47:33.000 2010-10-07 00:47:33.000 2010-09-23 00:48:10.000 2010-10-07 00:48:10.000 */ --日期减法 select top 10 indate 订单日期,DATEDIFF(DAY,InDate,'2010-10-10 00:00:00.000') '相减后的日期' from dbo.SOMaster with(nolock) order by InDate /* 订单日期 相减后的日期 2010-09-23 00:11:59.000 17 2010-09-23 00:12:29.000 17 2010-09-23 00:12:57.000 17 2010-09-23 00:21:21.000 17 2010-09-23 00:23:57.000 17 2010-09-23 00:27:06.000 17 2010-09-23 00:32:11.000 17 2010-09-23 00:47:11.000 17 2010-09-23 00:47:33.000 17 2010-09-23 00:48:10.000 17 */ SELECT SYSDATETIME() --获取系统时间 union all select SYSDATETIMEOFFSET() --获取当前日期和时间 --判断是否为日期数据isdate(expression) --若表达式为有效的日期数据:1 ,否则: 0 ----select ISDATE(OrderId) from ShippingOrderExtend WITH(NOLOCK) where OrderId=1019506 declare @aa int select isdate(@aa) /*************************************************************************/ --获取字符的ASCII码ASCII --ASCII码是对字符的标准编码。要获取字符的ASCII码就可以通过调用ASCII函数来实现 SET NOCOUNT ON --获取ASCII码起始位置临时变量 DECLARE @beginposition int --定义字符串变量,存储要获取ASCII码的字符串 DECLARE @TempString varchar(100) --初始化变量 SET @beginposition = 1 SET @TempString = 'dancewithwave@163.com' --对字符串中的每个字符循环执行ASCII函数 WHILE @beginposition < = DATALENGTH(@TempString) BEGIN SELECT ASCII ( SUBSTRING ( @TempString , @beginposition , 1 ) ), CHAR( ASCII ( SUBSTRING ( @TempString , @beginposition , 1 ) )) SET @beginposition = @beginposition + 1 END SET NOCOUNT OFF GO