[問題] ADO.NET查詢時間區間突然查不到?

看板C_Sharp (C#)作者 (重出江湖)時間10年前 (2015/05/10 21:32), 編輯推噓2(205)
留言7則, 3人參與, 最新討論串1/1
請問各位 我用ADO.NET下SQL指令查詢遇到一個問題 我條件是這麼寫的 … AND CreateDateTime BETWEEN @SevenDaysAgo AND CURRENT_TIMESTAMP cmd.Parameters.Add("@SevenDaysAgo", SqlDbType.DateTime); cmd.Parameters[1].Value = DateTime.Now.AddDays(-7); 我是想撈出前七天到目前時間的資料 到今天下午都還能正常跑出來 不過晚上再試就不行了 我有試著把@SevenDaysAgo改成'2015/05/03'就能出來了(在程式中或上SQL Server執行) DateTime.Now.AddDays(-7)的結果的確是2015/05/03 所以應該不是其他條件的關係(其實也只有兩個條件) CURRENT_TIMESTAMP我有試過換成GETDATE一樣不行 請問是我寫的方式不對嗎? 我的環境SQL Server 2014 資料庫的時間有 2015-05-10 09:04:05.883 2015-05-09 17:54:44.460 2015-05-09 17:49:17.997 2015-05-09 17:47:16.490 2015-05-09 17:46:36.173 2015-05-09 17:43:28.100 2015-05-09 17:41:08.323 2015-05-09 17:15:00.083 2015-05-06 22:08:39.537 奇怪的是只有2015-05-06這筆有出來 09跟10的資料都沒出來 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.169.175.163 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1431264721.A.BBC.html

05/10 23:50, , 1F
可以貼完整一點的code嗎?剛剛自己試了一下是沒問題的@@"
05/10 23:50, 1F

05/10 23:51, , 2F
不過小弟的資料庫用的是Sql Server 2012 不知到會不會有差異
05/10 23:51, 2F

05/10 23:51, , 3F
05/10 23:51, 3F

05/11 00:16, , 4F
用 AddWithValue 比較不容易搞錯,另外你可以想辦法把實際
05/11 00:16, 4F

05/11 00:16, , 5F
的SQL顯示出來
05/11 00:16, 5F

05/11 06:53, , 6F
抱歉烏龍一場 原來在條件的部份我把時間的欄位取錯了 囧
05/11 06:53, 6F

05/11 07:52, , 7F
用2015/05/04可應該是因為他的時間是2015/05/04 00:00:00
05/11 07:52, 7F
文章代碼(AID): #1LJrtHky (C_Sharp)
文章代碼(AID): #1LJrtHky (C_Sharp)