rprt.net
当前位置:首页 >> sql DAtEtimE DAtEADD >>

sql DAtEtimE DAtEADD

date是SQL Server 2008新引进的数据类型.它表示一个日子,不包含时间部分,可以表示的日期范围从公元元年1月1日到9999年12月31日.只需要3个字节的存储空间.DateTime 日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精确到3.33毫秒,它需要8个字节的存储空间.

DATEADD在向指定日期加上一段时间的基础上,返回新的 datetime 值.语法DATEADD ( datepart , number, date ) 参数datepart是规定应向日期的哪一部分返回新值的参数.下表列出了 Microsoft SQL Server 识别的日期部分和缩写.日期

set @currenttime=convert(varchar(100),getdate(),20)

select day(getdate()) select datepart(dd,getdate())用day()和datepart()函数都可以获取日期中的天数的.有问题可以追问或Hi我.

日期用单引号引起来,日期字符串会被自动转换为datetime类型比如insert into 表(时间列)select '2006-6-1 22:22:22'就是把2006年6月1日22点22分22秒,插入到表中.

SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)或者select dateadd(dd,-datepart(dd,getdate())+1,getdate())

一般情况下就用datetime就是了,smalldatetime精度太低了,判断时间的时候很容易弄错,等你用熟练了sql再使用smalldatetime吧,在c#里面拼一个string类型的sql语句就可以存储时间,如:string TestSql=" insert into TestTable set

----------------------实在不放心,用格式转换select convert(varchar(20),getdate(),121)

1.首先你的参数格式不对! 表达式 DateAdd(timeinterval,number,date) 第三个参数应该是一个日期值,如 2009-07-01 18:01:43.630 2.你的第二个参数是0, 这样,无论第一个参数是什么都不起作用,最后结果都是第三个参数, 如果第三个参数(你写的12)一样,那么他们的返回结果当然也是一样的!

表名:tablename.列名:tm1,tm2,tm3updatetime是查询出来的结果的别名.下面语句效果是,查询三列时间中最大的那个时间.select (case when tm1>tm2 and tm1>tm3 then tm1 when tm2>tm3 then tm2 else tm3 end) updatetime from tablename

网站首页 | 网站地图
All rights reserved Powered by www.rprt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com