- 浏览: 243567 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (192)
- 技术研究学习 (19)
- 工作总结 (4)
- spring3.x (11)
- mail (2)
- jar (2)
- FCKeditor (1)
- quartz (2)
- json (1)
- jdbc (5)
- struts2 (6)
- java基础 (18)
- jboss (3)
- IT名称解析 (1)
- 测试工具 (2)
- 工作趣谈 (1)
- 数据库 (8)
- js (8)
- jquery (1)
- mysql (20)
- Sql (3)
- Oracle (1)
- easyui (0)
- log4j (1)
- 源码研究 (1)
- Jasper Report (0)
- Jbpm4 (4)
- xml (1)
- ireport (0)
- javavm (1)
- sitemesh (5)
- compass (1)
- jvm (1)
- ext (1)
- lucene (0)
- cxf (1)
- Blazeds (0)
- Resteasy (1)
- jaxb (1)
- tomcat (1)
- Rmi (1)
- BoneCP (1)
- velocity (3)
- OSCache (1)
- EHCache (1)
- 高性能开发 (9)
- 设计模式 (0)
- 网络协议应用 (1)
- Ibatis (1)
- powerdesigner (1)
- 架构师之路 (2)
- memcached (4)
- MapReduce (1)
- 测试组 (1)
- 图像处理 (2)
- LoadRunner (2)
- 报表 (1)
- 负载均衡 (1)
- 分布式 (3)
- c# (1)
- java中一些特殊问题 (3)
- java 8 (1)
- Mogodb (1)
- 项目设计与实现 (2)
- Ubuntu (1)
- eclipse (1)
- gradle (1)
- 私有云 (1)
- redis (1)
- 移动前端 (1)
最新评论
sql查询当月,本天,本周的记录Sql代码
--查询当天:
select * from info where DateDiff(dd,datetime,getdate())=0
--查询24小时内的:
select * from info where DateDiff(hh,datetime,getDate())<=24
--info为表名,datetime为数据库中的字段值
--查询当天:select * from info where DateDiff(dd,datetime,getdate())=0--查询24小时内的:select * from info where DateDiff(hh,datetime,getDate())<=24--info为表名,datetime为数据库中的字段值
Sql代码
--查询当天记录另类的方法
SELECT *
FROM j_GradeShop
WHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000')
AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1)
ORDER BY GAddTime DESC
--查询当天记录另类的方法SELECT *FROM j_GradeShopWHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1)ORDER BY GAddTime DESC
DATEDIFF 函数:
语法:
DATEDIFF ( datepart , startdate , enddate ) 备注:
enddate 减去 startdate。如果 startdate 晚于 enddate,则返回负值。
如果结果超出整数值范围,则 DATEDIFF 将产生错误。对于毫秒,最大数是 24 天 20 小时 31 分钟零 23.647 秒。对于秒,最大数是 68 年。
跨分钟、秒和毫秒等边界计算的方法使得 DATEDIFF 指定的结果在所有数据类型中均一致。结果是带正负号的整数值,它等于跨第一个和第二个日期间的 datepart 边界数。例如,在 1 月 4 日(星期日)和 1 月 11 日(星期日)之间的星期数是 1。
可以再MSSQL中测试:
Sql代码
--两个时间差刚好是24
--打印的方式
print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
--查询的方式
print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
--两个时间差刚好是24--打印的方式print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')--查询的方式print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
Sql代码
--本月记录
SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0
--本周记录
SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0
--包括本年这些查询方式是一样的
--本月记录 SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0 --本周记录 SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0--包括本年这些查询方式是一样的
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(varchar(8),getdate(),114)
select datename(dw,'2004-10-15')
select 本年第多少周=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中,interval指定部分所对应的整数值 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 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 秒
DateDiff('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','2005-7-25 22:56:32')返回值为 2005即2005年
发表评论
-
查看sql语句执行时间/测试sql语句性能
2013-08-20 11:22 1616写程序的人,往往需要分析所写的SQL语句是否已经优化过了,服务 ... -
SQL Server 2005 中的分区表和索引
2013-08-06 11:46 654http://msdn.microsoft.com/zh-cn ... -
SQLServer如何查询所有表所有字段包含某某的信息
2013-07-23 10:44 729从系统表自动生成sql语句来运行得到结果 select a ... -
SQLServer如何查询所有表所有字段包含某某的信息
2013-07-23 10:43 859从系统表自动生成sql语句来运行得到结果 select a ... -
sum()over()
2012-09-25 13:40 795所用数据: SELECT a.deptno, a.emp ... -
高并发—数据库自增主键解决
2012-09-24 15:12 4250来源:http://www.2cto.com/database ... -
不同数据库mysql、oracle 、sql 长度的不同表示函数
2012-09-21 16:52 950在 SQL 中,長度函數是用來找出一個字串的長度。這個函數 ...
相关推荐
查询本月的记录,如何在SQL Server中查询本周 本月 本期, 本年的记录2008-01-15 17:41表名为:tableName 时间字段名为:theDate
查询本周记录\本月记录\本季度记录\本年记录等的SQL语句 分Mysql 和SQL Server 查询语句。 有效率的查询语句。
sql server 查询当天,本周,本月,本年,30天内的数据的sql语句
当月数据 select * from table t where t.create_time >=TRUNC(SYSDATE, 'MM') and t.create_time(SYSDATE) create_time为你要查询的时间 当年数据 select * from table t where t.create_time >=trunc...
Oracle sql查询当前月的所有日期
VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL...
SQLServer2005技术内幕T-SQL查询的代码示例
Microsoft SQL Server 2005技术内幕:T-SQL查询的源代码,主要是SQL脚本
sql查询表中某字段下所有重复的记录,删除某字段下重复记录最小的那笔记录
SQLServer2000数据查询基础ppt和SQL查询代码
这里面整理了很多经常用到的SQL查询代码案例。能够有效的帮助你在学习数据库部分的SQL查询这块的需求。
SQL查询最新充值记录余额.xls
SQL结构化查询语言 随书的源代码 希望对你有帮助
简单SQL语句,SQL查询语句,表连接查询
《Microsoft SQL Server 2008技术内幕:T-SQL查询》一书的源代码及附录A内容。确信可下载,真实有效的内容
SQL代码 创建 修改 空间索引 查询不同字段.sql 修改表.sql 用过程创建和丢弃空间索引.sql 用过程创建和丢弃空间索引.sql 用过程创建和丢弃空间索引.sql 运行前需要运行的SQL语句.SQL
SQL 一些常用语句大全 sql查询重复记录方法大全
《Microsoft SQL Server 2005技术内幕:T-SQL查询》示例代码
SQL查询语句大全SQL查询语句大全SQL查询语句大全SQL查询语句大全SQL查询语句大全SQL查询语句大全SQL查询语句大全SQL查询语句大全SQL查询语句大全
本书适合于需要编写或检查T-SQL代码的有经验的T-SQL程序员和数据库专业人员。读者可从中学到大量精湛的技巧,这些技巧会充实您的工具箱和编码技能,并让您顺利地开发出高效的解决方案。 作者简介 Itzik Ben-Gan是...