我需要使用“Substring”进行查询,但我不知道如何正确编写它。
我有这个查询
String where2 = SUBSTRING(DatabaseHelper.DATE,0,4) + "=" + "'" + year + "'";
cursor = db.query("PRODUCT", FROM, where2, null, null, null, orderBy);
它出了什么问题?
答案 0 :(得分: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";