2013-05-15 76 views
0

我需要使用「Substring」進行查詢,但我不知道如何正確編寫它。Android和Mysql問題

我有這個疑問

String where2 = SUBSTRING(DatabaseHelper.DATE,0,4) + "=" + "'" + year + "'"; 

cursor = db.query("PRODUCT", FROM, where2, null, null, null, orderBy); 

有什麼不對呢?

+1

出了什麼問題?你需要更具描述性。 –

+0

ANDROID認爲substring是一個類,我必須做這個類。但事實並非如此。 – Renata

+0

對不起,我的英文不好 – Renata

回答

0

使用String類的substring(int beginIndex, int endIndex)方法。對你來說,這將是這個樣子:

String where2 = DatabaseHelper.DATE.subString(0, 4) + "=" + "'" + year + "'"; 
cursor = db.query("PRODUCT", FROM, where2, null, null, null, orderBy); 

我假設DatabaseHelper.DATE指String

編輯:

你指的SQLite中的子方法,使用的核心功能substr(X,Y,Z)方法。你可以看看在這個名單:http://www.sqlite.org/lang_corefunc.html

where2字符串應該是這樣的,那麼:

String where2 = "substr(" + DatabaseHelper.DATE + ", 0, 5) ='" + year + "'"; 

你可能想別名欄還,作爲結果將用相同的名稱返回列substr什麼的。你可以這樣做:

String where2 = "substr(" + DatabaseHelper.DATE + ", 0, 5) ='" + year + "' AS mycolumn"; 
+0

如果這句話是在Android上執行的話,那將會很好,但是如果你看到句子的「where」子句將在mysql中執行,那麼這是行不通的。因爲我會在mysql中出錯。我需要在mysql中做一個子字符串,而不用在Android中做類。 我不知道如何混合這兩件事情。 – Renata

+0

啊!現在我明白了:)我已經更新了我的答案。 –

+0

YEAHHHHHH !!!!!!大。如果你在我身邊,我可以吻你。 jejejeje。非常感謝。 – Renata