2015-05-07 28 views
-1

在我的應用我設置3種報警一種藥..我想取藥名它們中的任何一個.. 查詢我firing-Android的 - OR條件的SQLite

String selectQuery = "SELECT " + MedName+" FROM " + TABLE_LABELS +" WHERE "+Alarm1+ "=? OR "+Alarm2+ "=? OR "+Alarm3+ "=?"; 

這僅爲alarm1返回名稱。 alarm2和alarm3的名稱爲空。 我錯過了什麼?

+1

什麼是報警1,報警2和ALARM3? 它應該每次都是包含列名的同一個字符串?! – MD1948

+3

什麼是價值觀,你如何約束選擇參數?你如何執行查詢? – laalto

+1

Alarm1,Alarm2,Alarm3是字符串..將時間存儲爲「12:01:00」.. – Prakhar

回答

1

應該是:

String selectQuery = "SELECT " + MedName + " FROM " + TABLE_LABELS +" WHERE " + COL_NAME + "=" + Alarm1 + " OR " + COL_NAME + "=" + Alarm2 + " OR " + COL_NAME + "=" + Alarm3; 
+0

我已經將時間值存儲在數據庫中,我將它與當前時間進行比較,將當前時間作爲參數傳遞。 getMedName(currentTime)...所以藥物名稱必須檢查當前時間是否在列Alarm1,Alarm2或Alarm3上的任何一個。 – Prakhar

+0

您是否將它們存儲爲時間戳或字符串? – MD1948

+0

存儲爲字符串 – Prakhar