2014-03-25 67 views
0

我需要建立一個查詢。如何構建sql查詢多個值其中值

下面是我的數據庫的表:

ID   Name 
20   ABC1 
30   ABC2 
40   ABC3 
60   ABC4 
70   ABC5 
80   ABC6 

我需要記錄的ID的30,40,70

我有如下書寫的查詢,但它給我錯誤。

String query = "SELECT * FROM tableName WHERE ID = '30','40','70' " 

上面的查詢我傳遞到下面的方法:

db.rawQuery(query ,null); 

但其投擲以下錯誤:

I/SqliteDatabaseCpp(19091): sqlite returned: error code = 1, msg = near ",": syntax error, db=xxx 

請讓我知道什麼可以做,以解決這個問題。

+0

串查詢= 「SELECT * FROM TABLENAME WHERE ID IN( '30', '40', '70')」 – Suvitruf

+0

http://www.techonthenet.com/sql/in.php – NickT

回答

2

可以使用常規的SQL語法爲:

String query = "SELECT * FROM tableName WHERE ID = '30' OR ID = '40' OR ID = '70' " 

順便說一句,你可以方便的android方式使用:

Exapmle

2

你需要寫,而不是WHERE ID IN ('30', '40', '70')

另外,我強烈建議你使用db.query而不是db.rawQuery來避免可能的sql注入攻擊或一般字符串esc aping錯誤。

0
String query = "SELECT * FROM tableName WHERE ID in ('30','40','70')