ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:18.60KB ,
资源ID:10766106      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10766106.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(sql计算天数.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

sql计算天数.docx

1、sql计算天数sql计算天数 SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate(), 0) as mouthfirstdate,dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate()+1, 0) as mouthlastdate=最后一天=本月【数据所在服务器】最后一天:SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate()+1, 0) as mouthlastdate下月【数据所在服务器】最后一天:SELECT dateadd(ms,-3

2、,DATEADD(mm, DATEDIFF(m,0,getdate()+2, 0) as mouthlastdate下下月【数据所在服务器】最后一天:SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate()+3, 0) as mouthlastdate下下下月【数据所在服务器】最后一天:SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate()+4, 0) as mouthlastdate下下下月【数据所在服务器】最后一天:SELECT dateadd(ms,-3,DATEADD(mm,

3、DATEDIFF(m,0,getdate()+5, 0) as mouthlastdate下下下下月【数据所在服务器】最后一天:SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate()+6, 0) as mouthlastdate=第一天=本月第一天SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate(), 0) as mouthlastdate下月第一天:SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate()+1, 0) as m

4、outhlastdate下下月第一天:SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate()+2, 0) as mouthlastdate=select CONVERT(varchar, getdate(), 120 )->>SQL语句2004-09-12 11:06:08 ->>显示结果(以下类同)select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),''-'',''''),

5、'' '',''''),'':'','''')20040912110608select CONVERT(varchar(12) , getdate(), 111 )2004/09/12select CONVERT(varchar(12) , getdate(), 112 )20040912select CONVERT(varchar(12) , getdate(), 102 )2004.09.12select CONVERT(varchar(12) , getdate

6、(), 101 )09/12/2004select CONVERT(varchar(12) , getdate(), 103 )12/09/2004select CONVERT(varchar(12) , getdate(), 104 )12.09.2004select CONVERT(varchar(12) , getdate(), 105 )12-09-2004select CONVERT(varchar(12) , getdate(), 106 )12 09 2004select CONVERT(varchar(12) , getdate(), 107 )09 12, 2004selec

7、t CONVERT(varchar(12) , getdate(), 108 )11:06:08select CONVERT(varchar(12) , getdate(), 109 )09 12 2004 1select CONVERT(varchar(12) , getdate(), 110 )09-12-2004select CONVERT(varchar(12) , getdate(), 111 )2007-3-23select CONVERT(varchar(12) , getdate(), 113 )12 09 2004 1select CONVERT(varchar(12) ,

8、getdate(), 114 )11:06:08.177设置默认值时去掉"select"单词。-另附函数:FormatDateTime(Date,vbShortDate) 转化为短日期格式 这个是你要的.FromatDateTime(Date,vbLongDate) 以 长日期格式显示FormatDateTime(Date,vbLongDate) 转化为长日期格式FormatDateTime(Date,vbShortTime) 转化为短时间格式FormatDateTime(Date,vbLongTime) 转化为长时间格式=日期和时间函数:Sql Server中的日期与时间

9、函数1. 当前系统日期、时间select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值例如:向日期加上2天select dateadd(day,2,'2004-10-15') -返回:2004-10-17 00:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数。select datediff(day,'2004-09-01','2004-09-18') -返回:174. datepart 返回代表指定日期的指定日期部分的整数。SELECT DATEPART

10、(month, '2004-10-15') -返回 105. 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 本年第多少周

11、=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中,interva

12、l指定部分所对应的整数值 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 Weekday Dw w 一周的日数,一周中的第几日 1-7 Week Wk ww 周,一年中的第几周 0 51 Hour

13、Hh h 时0 23 Minute Mi n 分钟0 59 Second Ss s 秒 0 59 Millisecond Ms - 毫秒 0 999 access 和 asp 中用date()和now()取得系统日期时间;其中DateDiff,DateAdd,DatePart也同是能用于Access和asp中,这些函数的用法也类似举例:1.GetDate() 用于sql server :select GetDate()2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值为 514592 秒Dat

14、eDiff('d','2005-07-20','2005-7-25 22:56:32')返回值为 5 天3.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

15、9;,'2005-7-25 22:56:32')返回值为 2005即2005年 本月的最后一天现在,为了获得本月的最后一天,我需 要稍微修改一下获得上个月的最后一天的语句。修改需要给用DATEDIFF比较当前日期和“19000101”返回的时间间隔上加1。通过加1个月,我计算出下个月的第一天,然后减去3毫秒,这样就计算出了这个月的最后一天。这是计算本月最后一天的SQL脚本。Select dateadd(ms,3,DATEADD(mm, DATEDIFF(m,0,getdate()+1, 0)动态SQL拼接 分类: DATABASE_STUDY 2011-10-14 00:04

16、11人阅读 评论(0) 收藏 举报 declare RowCount intdeclare sql nvarchar(500)set sql = 'select top ' + convert(varchar, RowCount) + ' SERIAL_NO,MSG_NO into TempRecord from dbo.Temp_MsgHead order by REC_DATE'exec sp_executesql sqlselect * from TempRecord truncate table TempRecorddrop table TempReco

17、rd常用函数对比 分类: DATABASE_STUDY 2011-09-14 22:27 38人阅读 评论(0) 收藏 举报 ISNULL(参数1,参数2)若参数1为空,则返回参数2NULLIF(参数1,参数2)若参数1和参数2不等,则返回参数1若参数1和参数2相等,则返回NULL例子:ISNULL(NULLIF(字段名XX,''),'AAA')ISNUMERIC(参数1)判断参数1是否为数字,是数字就返回1,不是数字、空字符串、Null则返回0 -数学函数 1.绝对值 S:select abs(-1) valueO:select abs(-1) value f

18、rom dual2.取整(大) S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual3.取整(小) S:select floor(-1.001) value O:select floor(-1.001) value from dual4.取整(截取)S:select cast(-1.002 as int) value O:select trunc(-1.002) value from dual 5.四舍五入S:select round(1.23456,4) value 1.23460O:select round

19、(1.23456,4) value from dual 1.23466.e为底的幂 S:select Exp(1) value 2.7182818284590451 O:select Exp(1) value from dual 2.718281827.取e为底的对数S:select log(2.7182818284590451) value 1O:select ln(2.7182818284590451) value from dual; 18.取10为底对数S:select log10(10) value 1O:select log(10,10) value from dual; 19.取

20、平方S:select SQUARE(4) value 16O:select power(4,2) value from dual 1610.取平方根S:select SQRT(4) value 2O:select SQRT(4) value from dual 211.求任意数为底的幂S:select power(3,4) value 81O:select power(3,4) value from dual 8112.取随机数S:select rand() value O:select sys.dbms_random.value(0,1) value from dual;13.取符号S:se

21、lect sign(-8) value -1O:select sign(-8) value from dual -114.圆周率S:SELECT PI() value 3.1415926535897931O:不知道15.sin,cos,tan 参数都以弧度为单位例如:select sin(PI()/2) value 得到1(SQLServer)16.Asin,Acos,Atan,Atan2 返回弧度17.弧度角度互换(SQLServer,Oracle不知道)DEGREES:弧度-角度RADIANS:角度-弧度-数值间比较18. 求集合最大值S:select max(value) value f

22、rom (select 1 valueunionselect -2 valueunionselect 4 valueunionselect 3 value)aO:select greatest(1,-2,4,3) value from dual19. 求集合最小值S:select min(value) value from (select 1 valueunionselect -2 valueunionselect 4 valueunionselect 3 value)aO:select least(1,-2,4,3) value from dual20.如何处理null值(F2中的null以

23、10代替)S:select F1,IsNull(F2,10) value from TblO:select F1,nvl(F2,10) value from Tbl-数值间比较21.求字符序号S:select ascii('a') valueO:select ascii('a') value from dual22.从序号求字符S:select char(97) valueO:select chr(97) value from dual23.连接S:select '11'+'22'+'33' valueO:sele

24、ct CONCAT('11','22')|33 value from dual23.子串位置 -返回3S:select CHARINDEX('s','sdsq',2) value O:select INSTR('sdsq','s',2) value from dual23.模糊子串的位置 -返回2,参数去掉中间%则返回7S:select patindex('%d%q%','sdsfasdqe') value O:oracle没发现,但是instr可以通过第四霾问 刂瞥

25、鱿执问?BR>select INSTR('sdsfasdqe','sd',1,2) value from dual 返回624.求子串S:select substring('abcd',2,2) value O:select substr('abcd',2,2) value from dual25.子串代替 返回aijklmnefS:SELECT STUFF('abcdef', 2, 3, 'ijklmn') valueO:SELECT Replace('abcdef', &#

26、39;bcd', 'ijklmn') value from dual26.子串全部替换S:没发现O:select Translate('fasdbfasegas','fa','我' ) value from dual27.长度S:len,datalengthO:length28.大小写转换 lower,upper29.单词首字母大写S:没发现O:select INITCAP('abcd dsaf df') value from dual30.左补空格(LPAD的第一个参数为空格则同space函数)S:sel

27、ect space(10)+'abcd' valueO:select LPAD('abcd',14) value from dual31.右补空格(RPAD的第一个参数为空格则同space函数)S:select 'abcd'+space(10) valueO:select RPAD('abcd',14) value from dual32.删除空格S:ltrim,rtrimO:ltrim,rtrim,trim33. 重复字符串S:select REPLICATE('abcd',2) value O:没发现34.发音

28、相似性比较(这两个单词返回值一样,发音相同)S:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe')O:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe') from dualSQLServer中用SELECT DIFFERENCE('Smithers', 'Smythers') 比较soundex的差返回0-4,4为同音,1最高-日期函数35.系统 时间S:select getdate() valueO:select sysdate value from dual36.前后几日直接与整数相加减37.求日期S:select convert(char(10),getdate(),20) valueO:select trunc(sysdate) value from dualselect to_char(sysdate,'yyyy-mm-dd') value from dual38.求时间S:select convert(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1