欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

sql server查詢時(shí)間技巧分享

 更新時(shí)間:2012年11月30日 08:55:39   作者:  
如何將時(shí)間轉(zhuǎn)換為字符串的形式,本文將介紹sql server查詢時(shí)間的一些實(shí)用技巧,需要的朋友可以參考下
1、將時(shí)間轉(zhuǎn)換為字符串的形式:
復(fù)制代碼 代碼如下:

convert(varchar,字段名,120)--------yyyy-mm-ddhh:ss:mm0000
convert(char(10),字段名,120)------yyyy-mm-dd

2、如果使用的是sql編輯器(微軟自帶的工具),查詢?nèi)掌诓恍枰褂煤瘮?shù)轉(zhuǎn)換,例如
Sql代碼
復(fù)制代碼 代碼如下:

select*frominfowheredatatime>'2012-11-1100:00:00'anddatetime<'2012-12-1200:00:00'

3、如果是使用hibernate來查詢數(shù)據(jù)(使用HQL)就不能使用上面這種方式了,因?yàn)椴樵兊氖菍?duì)象,那么參數(shù)傳遞的時(shí)候要保證傳遞的參數(shù)是Date類型,否則會(huì)提示“轉(zhuǎn)換錯(cuò)誤”
Java代碼
復(fù)制代碼 代碼如下:

frompersonaspwherep.date=:date

傳遞的參數(shù):date一定要是Date類型
4、我們?cè)谶M(jìn)行日期查詢的時(shí)候,發(fā)現(xiàn)數(shù)據(jù)庫的內(nèi)容是yyyy-mm-dd00:00:00000后面會(huì)精確到毫秒,但是如果我們使用Calendar類來得到Date類型,也是沒有辦法精確到毫秒的,既我們最多只能得到y(tǒng)yyy-mm-dd00:00:00xxx毫秒數(shù)是當(dāng)時(shí)系統(tǒng)的毫秒,那么查詢就會(huì)有誤差
5、時(shí)間的區(qū)間段查詢
例如我想查詢2011-11-11到2012-12-12之間的信息,它默認(rèn)查詢的時(shí)間是
2011-11-1100:00:00到2012-12-1200:00:00,也就是說2012-12-1223:59:59秒的時(shí)間是查詢不到的
解決辦法:將查詢的起始時(shí)間提前1秒,將終止時(shí)間多一天(少1秒)

相關(guān)文章

最新評(píng)論