sql日期

SQL Server日期和时间函数

浪子不回头ぞ 提交于 2020-01-04 03:17:05
1.当前时间 SELECT GETDATE() 2.日期格式,使用CONVERT转换SELECT CONVERT(VARCHAR,GETDATE(),25) 2012-08-15 11:33:35.780 SELECT CONVERT(VARCHAR,GETDATE(),121) 2012-08-15 11:33:35.780 SELECT CONVERT(VARCHAR,GETDATE(),24) 11:32:55 SELECT CONVERT(VARCHAR,GETDATE(),108) 11:32:55 SELECT CONVERT(VARCHAR,GETDATE(),23) 2012-08-15 SELECT CONVERT(VARCHAR,GETDATE(),23) 2012-08-15 11:34:49 SELECT CONVERT(VARCHAR,GETDATE(),120) 2012-08-15 11:34:49 SELECT CONVERT(VARCHAR,GETDATE(),114) 11:39:06:840 SELECT CONVERT(VARCHAR,GETDATE(),113) 15 08 2012 11:38:35:750 SELECT CONVERT(VARCHAR,GETDATE(),112) 20120815 SELECT CONVERT

sql日期转换

筅森魡賤 提交于 2020-01-04 02:46:54
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):

SQL日期转换

痞子三分冷 提交于 2020-01-04 02:45:33
DECLARE @DateTimeVaue VARCHAR(30) SET @DateTimeVaue = '20130402140837' -- 2013/04/02 14:08:37 --使用字串函數先將字串轉成日期格式字串再轉成DateTime (20130402140837 => 20130402 14:08:37) SELECT CONVERT(DATETIME, LEFT(@DateTimeVaue, 8) + ' ' + SUBSTRING(@DateTimeVaue, 11, 2) + ':'+ RIGHT(@DateTimeVaue, 2), 112) Select CONVERT(varchar(100), GETDATE(), 8) Select CONVERT(varchar(100), GETDATE(), 9) Select CONVERT(varchar(100), GETDATE(), 10) Select CONVERT(varchar(100), GETDATE(), 11) Select CONVERT(varchar(100), GETDATE(), 12) Select CONVERT(varchar(100), GETDATE(), 13) Select CONVERT(varchar(100), GETDATE(), 14)

Sql日期时间格式转换

孤人 提交于 2019-12-30 04:31:13
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):

Sql日期时间格式转换

时光总嘲笑我的痴心妄想 提交于 2019-12-30 04:27:44
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):

sql server日期时间转字符串

别说谁变了你拦得住时间么 提交于 2019-12-25 03:28:16
一、 sql 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 (

sql to_char 日期转换字符串

喜你入骨 提交于 2019-12-22 01:07:30
sql to_char 日期转换字符串 1、转换函数 与date操作关系最大的就是两个转换函数:to_date(),to_char() to_date() 作用将字符类型按一定格式转化为日期类型: 具体用法:to_date(‘2004-11-27’,‘yyyy-mm-dd’),前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。 如;to_date(‘2004-11-27 13:34:43’, ‘yyyy-mm-dd hh24:mi:ss’) 将得到具体的时间 多种日期格式: YYYY:四位表示的年份 YYY,YY,Y:年份的最后三位、两位或一位,缺省为当前世纪 MM:01~12的月份编号 MONTH:九个字符表示的月份,右边用空格填补 MON:三位字符的月份缩写 WW:一年中的星期 D:星期中的第几天 DD:月份中的第几天 DDD:年所中的第几天 DAY:九个字符表示的天的全称,右边用空格补齐 HH,HH12:一天中的第几个小时,12进制表示法 HH24:一天中的第几个小时,取值为00~23 MI:一小时中的分钟 SS:一分钟中的秒 SSSS:从午夜开始过去的秒数 to_char():将日期转按一定格式换成字符类型 SQL> select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) time from dual; TIME 2004

[SQL]数据类型详解

可紊 提交于 2019-12-20 04:50:37
SQL SERVER的数据类型   数据类弄是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。当然,不同的程序语言都具有不同的特点,所定义的数据类型的各类和名称都或多或少有些不同。SQLServer 提供了 25 种数据类型:   ·Binary [(n)]   ·Varbinary [(n)]   ·Char [(n)]   ·Varchar[(n)]   ·Nchar[(n)]   ·Nvarchar[(n)]   ·Datetime   ·Smalldatetime   ·Decimal[(p[,s])]   ·Numeric[(p[,s])]   ·Float[(n)]   ·Real   ·Int   ·Smallint   ·Tinyint   ·Money   ·Smallmoney   ·Bit   ·Cursor   ·Sysname   ·Timestamp   ·Uniqueidentifier   ·Text   ·Image   ·Ntext (1)二进制数据类型   二进制数据包括 Binary、Varbinary 和 Image   Binary 数据类型既可以是固定长度的(Binary),也可以是变长度的。   Binary[(n)] 是 n 位固定的二进制数据。其中,n 的取值范围是从 1 到 8000

SQL server的字段类型详解

泪湿孤枕 提交于 2019-12-12 18:02:34
SQL server的字段类型详解 bit 整型 bit数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或False 、On 或Off. 注意:很省空间的一种数据类型,如果能够满足需求应该尽量多用。 tinyint 整型 tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。这种数据类型在数据库中占用1 个字节. 注意:如果bit类型太单调不能满足您的需求,您可以考虑用tinyint类型,因为这个类型相对也是比较安全的,不接受恶意脚本内容的嵌入。 smallint 整型 smallint 数据类型可以存储从- 2的15次幂(-32768)到2的15次幂(32767)之间的整数。这种数据类型对存储一些常限定在特定范围内的数值型数据非常有用。这种数据类型在数据库里占用2 字节空间. 注意:如果tinyint类型太单调不能满足您的需求,您可以考虑用smallint类型,因为这个类型相对也是比较安全的,不接受恶意脚本内容的嵌入。 int 整型 int 数据类型可以存储从- 2的31次幂(-2147483648)到2的31次幂 (2147483 647)之间的整数。存储到数据库的几乎所有数值型的数据都可以用这种数据类型。这种数据类型在数据库里占用4个字节. 注意

在论坛中出现的比较难的sql问题:33(递归 连续日期问题 )

ε祈祈猫儿з 提交于 2019-12-11 00:40:26
原文: 在论坛中出现的比较难的sql问题:33(递归 连续日期问题 ) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了。 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路。 MS-SQL取连续日期问题 http://bbs.csdn.net/topics/390635235?page=1#post-395995697 我现在需要得出表A中所有FBeginDate和FEndDate字段间的日期 下面是我的解法,使用了递归查询: drop table tb create table tb(FBeginDate datetime,FEndDate datetime) insert into tbselect '2010-10-01','2010-10-01'union all select '2010-10-01','2010-10-07'union all select '2011-01-30','2011-02-12' ;with tas(select 1 as numberunion allselect number + 1from twhere t.number < 100) select tb.FBeginDate, tb.FEndDate, dateadd(day,t.number-1