SQLite 中關於日期的查詢處理

2021-07-02 13:13:11 字數 1069 閱讀 5065

sqlite 中可以根據日期來篩選資料。

日期格式 經過測試支援yyyy-mm-dd和yyyy-mm-dd hh:mm:ss,。

但是 在測試時出現了乙個問題:

當我用?代替引數時:

cursor cursor = dbhelper.getreadabledatabase().rawquery("select * from test where h_time>='?' and h_time<='?'", 

new string)

logcat出現如下錯誤:

直接用sql語句:

cursor cursor = dbhelper.getreadabledatabase().rawquery("select h_name from test where h_time>='1991-07-03 00:00:00' and h_time<='1991-07-03 23:59:59'", null);
程式執行正常,能查詢出預期結果。

然後又嘗試了幾種寫法:單引號加到string裡面:

cursor cursor = dbhelper.getreadabledatabase().rawquery("select h_name from test where h_time>=? and h_time<=?", 

new string);

與不加單引號

cursor cursor = dbhelper.getreadabledatabase().rawquery("select h_name from test where h_time>=? and h_time<=?", 

new string);

程式沒有報錯,但是沒有出現預期的查詢結果。

以後關於時間的判斷處理,盡量在sql語句中通過拼接字串完成。

出現上述情況。希望有知道的人解答。

關於日期的查詢

生日查詢 例如 8.1 8.15 之間過生日的 select from presoninfo where dateadd year,datediff year,flocktime,2009 8 1 flocktime between 2009 8 1 and 2009 8 15 or dateadd...

sqlite中對日期的操作

在android中使用sqlite時,日期處理比較特殊,網上找了很多種方法,試驗出一種相對來說比較合適的 把日期型別作為integer建表,在插入資料庫時,用new date gettime 存入,取出時,再轉為date型別date date new date cursor.getlong i 取某...

SQLite中的時間日期函式

datetime 產生日期和時間 date 產生日期 time 產生時間 strftime 對以上三個函式產生的日期和時間進行格式化 datetime 的用法是 datetime 日期 時間,修正符,修正符.date 和time 的語法與datetime 相同。yyyy mm dd yyyy mm ...