sql server查询时间技巧分享
网络编程 2021-07-05 16:15www.168986.cn编程入门
如何将时间转换为字符串的形式,本文将介绍sql server查询时间的一些实用技巧,需要的朋友可以参考下
1、将时间转换为字符串的形式:
convert(varchar,字段名,120)--------yyyy-mm-ddhh:ss:mm0000
convert(char(10),字段名,120)------yyyy-mm-dd
2、如果使用的是sql编辑器(微软自带的工具),查询日期不需要使用函数转换,例如
Sql代码
selectfrominfowheredatatime>'2012-11-1100:00:00'anddatetime<'2012-12-1200:00:00'
3、如果是使用hibernate来查询数据(使用HQL)就不能使用上面这种方式了,因为查询的是对象,那么参数传递的时候要保证传递的参数是Date类型,否则会提示“转换错误”
Java代码
frompersonaspwherep.date=:date
传递的参数:date一定要是Date类型
4、我们在进行日期查询的时候,发现数据库的内容是yyyy-mm-dd00:00:00000后面会精确到毫秒,如果我们使用Calendar类来得到Date类型,也是没有办法精确到毫秒的,既我们最多只能得到yyyy-mm-dd00:00:00xxx毫秒数是当时系统的毫秒,那么查询就会有误差
5、时间的区间段查询
例如我想查询2011-11-11到2012-12-12之间的信息,它默认查询的时间是
2011-11-1100:00:00到2012-12-1200:00:00,也就是说2012-12-1223:59:59秒的时间是查询不到的
解决办法将查询的起始时间提前1秒,将终止时间多一天(少1秒)
代码如下:
convert(varchar,字段名,120)--------yyyy-mm-ddhh:ss:mm0000
convert(char(10),字段名,120)------yyyy-mm-dd
2、如果使用的是sql编辑器(微软自带的工具),查询日期不需要使用函数转换,例如
Sql代码
代码如下:
selectfrominfowheredatatime>'2012-11-1100:00:00'anddatetime<'2012-12-1200:00:00'
3、如果是使用hibernate来查询数据(使用HQL)就不能使用上面这种方式了,因为查询的是对象,那么参数传递的时候要保证传递的参数是Date类型,否则会提示“转换错误”
Java代码
代码如下:
frompersonaspwherep.date=:date
传递的参数:date一定要是Date类型
4、我们在进行日期查询的时候,发现数据库的内容是yyyy-mm-dd00:00:00000后面会精确到毫秒,如果我们使用Calendar类来得到Date类型,也是没有办法精确到毫秒的,既我们最多只能得到yyyy-mm-dd00:00:00xxx毫秒数是当时系统的毫秒,那么查询就会有误差
5、时间的区间段查询
例如我想查询2011-11-11到2012-12-12之间的信息,它默认查询的时间是
2011-11-1100:00:00到2012-12-1200:00:00,也就是说2012-12-1223:59:59秒的时间是查询不到的
解决办法将查询的起始时间提前1秒,将终止时间多一天(少1秒)
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南