易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL下日期函数使用

这两天写一个和统计数据有关的存储过程,里面要利用日期进行一些计算和判断,也自然要利用SQL的一些日期相关的函数。这里略记一下,当是复习一下SQL。
利用SQL脚本内置的几个函数,我们能灵活的对日期进行计算和比较。常用的几个函数:GETDATE(),DATEDIFF(),DATEADD()
GETDATE() 当然顾名思义,得到当前的日期,返回类型是DateTime类型。
DATEDIFF ( datepart , startdate , enddate ) 用于判断在两个日期之间存在的指定时间间隔的数目。
第一个参数是指定时间间隔的类型,例如mm(月),dd(天),yy(年),ms(毫秒),ss(秒),不同的间隔类型,返回的结果也不一样。
DATEADD (datepart , number, date ) 用于日期运算的函数,将传入的日期,加上指定时间间隔数目的日期。
例如,计算得到本年的第一天:
Select DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)
我们来分析下这个SQL语句就可以知道,首先从最里面的getdate()开始,getdate()得到当前日期和时间,外层的datediff,计算当前日期和1900-01-01 00:00:00之间的时间间隔,返回单位是以年来统计的,如果我们分开看DATEDIFF(yy,0,getdate()),0)的结果,返回就是:109。返回的109,传递给最外层的DATEADD函数,将1900-01-01 00:00:00加上109年,得到的结果,自然就是2009-01-01 00:00:00了,也即本年的第一天。
同样,灵活的利用这几个函数的组合,我们可以得到不同的结果:
得到当月的第一天:Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
得到当前季度的第一天:Select DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)
得到当天的起始时间: Select DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)
得到上个月最后一天: Select DATEADD(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))
得到上个月的第一天: Select DATEADD(m,-1,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))
其原理就是得到当月第一天,再减去三毫秒(SQL的时间以3毫秒为一个单位),这样以当前为2月,得到的结果就是:2009-01-31 23:59:59.997
得到去年的最后一天: Select DATEADD(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))
得到本月的最后一天: Select DATEADD(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))
得到本年的最后一天: Select DATEADD(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))
得到本月的第一个星期一: Select DATEADD(wk, DATEDIFF(wk,0,DATEADD(dd,6-datepart(day,getdate()),g


相关文档:

SQL重复记录查询

SQL重复记录查询
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from
people
where peopleId in (select   peopleId from   people group by   peopleId
having count
(peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(p ......

在SQL中Select语句的执行顺序

在SQL中Select语句的执行顺序如下:
(1)from子句,组装来自不同数据源的数据
(2)WHERE子句,给予指定条件对记录进行筛选
(3)GROUP BY子句,将数据划分为多个组
(4)使用聚集函数进行计算
(5)使用HAVING子句筛选分组
(6)计算所有表达式
(7)使用ORDER BY对结果进行排序 ......

如何从 PL/SQL 存储函数返回数组

日期:2003 年 2 月 19 日
完成此方法指南后,您应该能够:
在 Oracle 数据库中创建 VARRAY
使用 oracle.sql.ARRAY 类
从 Java 访问 VARRAY
简介
本文档演示如何从 PL/SQL 函数返回数组并从 java 应用程序访问它。数组是一组有序的数据元素。 VARRAY 是大小可变的数组。它具有数据元素的排列集,并且所有元素属于 ......

标准常用sql语句 一

 SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。
不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的 ......

如何恢复MS SQL数据库的MDF文件

參考: http://blog.sina.com.cn/s/blog_59b11d010100af1n.html
如何恢复/修复MS SQL数据库的MDF文件
如果备份的数据库有2个文件,分别是.LDF 和 .MDF,打开企业管理器,在实例上右击---所有任务--附加数据库,然后选择那个.MDF文件,就可以了。
  或者在查询分析器中输入:
  sp_attach_db "数据库名称" ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号