SqlServer 按時(shí)間段查詢問題
百度的資料,保存下來:
在寫按時(shí)間段查詢的sql語(yǔ)句的時(shí)候 一般我們會(huì)這么寫查詢條件:
where date>='2010-01-01' and date<='2010-10-1'
但是在實(shí)執(zhí)行Sql時(shí)些語(yǔ)句會(huì)轉(zhuǎn)換成這樣:
where date>='2010-01-01 0:00:00' and date<='2010-10-1:0:00:00'
,再看這個(gè)條件的話,也許就會(huì)有些明白,
那就是'2010-10-1 0:00:00' 之后的數(shù)據(jù)例如('2010-10-1:08:25:00')查不到,也就是說2010-10-1的數(shù)據(jù)查不到。
知道原因了可以修改查詢條件為:
where date>='2010-01-01' and date<='2010-10-1 23:59:59' 或 where date>='2010-01-01' and date<='2010-10-2'
某個(gè)表某個(gè)字段是Datetime型 以"YYYY-MM-DD 00:00:00" 存放
(1)、例如數(shù)據(jù)
2009-01-22 21:22:22
2009-01-22 19:21:11
2009-01-22 23:10:22
(2)、用 select * from TABLE where date between '2009-1-22' And '2009-1-22'
,想查日期為2009-1-22的記錄,結(jié)果查不到
(3)、問題原因
短日期類型默認(rèn)Time為00:00:00,所以當(dāng)使用between作限制條件時(shí),就相當(dāng)于between '2009-1-22 00:00:00' and '2009-1-22 00:00:00',因此就查不出數(shù)據(jù)。
(4)、解決方法
--方案一:對(duì)數(shù)據(jù)庫(kù)里面的字段進(jìn)行日期格式轉(zhuǎn)換 select * from tb where convert(varchar(10),riqi,120) = '2009-01-22' --方案二:給日期補(bǔ)全時(shí)分秒 select * from tb where riqi between '2009-01-22 00:00:00' and '2009-01-22 23:59:59' --結(jié)果 /**//* id riqi ---- ------------------------------------------------------ A 2009-01-22 21:22:22.000 B 2009-01-22 19:21:11.000 C 2009-01-22 23:10:22.000 (所影響的行數(shù)為 3 行) */
總結(jié)
以上所述是小編給大家介紹的SqlServer 按時(shí)間段查詢問題,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)我們網(wǎng)站的支持!
欄 目:MsSql
下一篇:SQL Server Page結(jié)構(gòu)深入分析
本文標(biāo)題:SqlServer 按時(shí)間段查詢問題
本文地址:http://mengdiqiu.com.cn/a1/MsSql/10412.html
您可能感興趣的文章
- 01-10SQLServer存儲(chǔ)過程實(shí)現(xiàn)單條件分頁(yè)
- 01-10SQLServer中防止并發(fā)插入重復(fù)數(shù)據(jù)的方法詳解
- 01-10SqlServer 在事務(wù)中獲得自增ID的實(shí)例代碼
- 01-10SqlServer快速檢索某個(gè)字段在哪些存儲(chǔ)過程中(sql 語(yǔ)句)
- 01-10SQLServer性能優(yōu)化--間接實(shí)現(xiàn)函數(shù)索引或者Hash索引
- 01-10SQLServer數(shù)據(jù)庫(kù)中開啟CDC導(dǎo)致事務(wù)日志空間被占滿的原因
- 01-10SQLServer中使用擴(kuò)展事件獲取Session級(jí)別的等待信息及SQLServer 2016中
- 01-10SQLServer2008新實(shí)例遠(yuǎn)程數(shù)據(jù)庫(kù)鏈接問題(sp
- 01-10SQLServer存儲(chǔ)過程創(chuàng)建和修改的實(shí)現(xiàn)代碼
- 01-10Sqlserver事務(wù)備份和還原的實(shí)例代碼(必看)


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-10SQLServer存儲(chǔ)過程實(shí)現(xiàn)單條件分頁(yè)
- 01-10SQLServer中防止并發(fā)插入重復(fù)數(shù)據(jù)的方
- 01-10SQL Server 2012降級(jí)至2008R2的方法
- 01-10SQL Server性能調(diào)優(yōu)之緩存
- 01-10SQL Server數(shù)據(jù)庫(kù)定時(shí)自動(dòng)備份
- 01-10Sql Server 死鎖的監(jiān)控分析解決思路
- 01-10實(shí)現(xiàn)SQL Server 原生數(shù)據(jù)從XML生成JSON數(shù)
- 01-10SqlServer快速檢索某個(gè)字段在哪些存儲(chǔ)
- 01-10SqlServer 在事務(wù)中獲得自增ID的實(shí)例代
- 01-10SQLServer性能優(yōu)化--間接實(shí)現(xiàn)函數(shù)索引或
隨機(jī)閱讀
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 01-10delphi制作wav文件的方法
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 04-02jquery與jsp,用jquery
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-10C#中split用法實(shí)例總結(jié)
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文