Android 从sqlite数据库中选择日期范围
我正试图根据更新时间选择一些帐户 我的表名为account,包含Android 从sqlite数据库中选择日期范围,android,database,sqlite,Android,Database,Sqlite,我正试图根据更新时间选择一些帐户 我的表名为account,包含createdOn、updatedOn、acountName等列 现在,日期存储为字符串2012-03-20 如何进行sql查询以根据日期选择不同的帐户 这是我的密码 public ArrayList<Account> getAllAccountsForReports(Date dateTo, Date dateFrom) { ArrayList<Account> accounts = ne
createdOn、updatedOn、acountName等列
现在,日期存储为字符串2012-03-20
如何进行sql查询以根据日期选择不同的帐户
这是我的密码
public ArrayList<Account> getAllAccountsForReports(Date dateTo, Date dateFrom)
{
ArrayList<Account> accounts = new ArrayList<Account>();
String queryString = "SELECT * FROM MAAccounts WHERE updatedOn = ? BETWEEN updatedOn = ? ORDER BY accountType, accountName";
Cursor result = mDb.rawQuery(queryString, new String[]{ dateToDB(dateTo), dateToDB(dateFrom)});
public ArrayList getAllAccountsForReports(日期日期到,日期从)
{
ArrayList accounts=新的ArrayList();
String queryString=“从MAAccounts中选择*其中updatedOn=?介于updatedOn=?按accountType、accountName排序”;
游标结果=mDb.rawQuery(queryString,新字符串[]{dateToDB(dateTo),dateToDB(dateFrom)});
请告诉我如何更正sql查询
最好的问候您的之间的语法已关闭,您想要的可能是
SELECT * FROM MAAccounts
WHERE updatedOn
BETWEEN ? AND ?
ORDER BY accountType, accountName
由于您是按“yyyy-MM-dd”进行存储的,因此使用字符串可以很好地进行存储
我不确定要使用哪个表名,因为您在问题中说它被称为account
,在代码中称为MAAccounts
,并且问题中的列拼写错误,所以您当然需要根据实际的列名调整它