SQLite查询在Android中失败

SQLite查询在Android中失败,android,sqlite,Android,Sqlite,如果我使用该查询返回表中的一些基本列,就可以了。但是,如果使用group by、order by、sumcolumn或选择指定的列,查询将无法运行 我使用游标查询方法或rawquery,两者都相同。如果我在adb shell中运行以下查询,那么它可以正常工作 select * from table (work) select fielda, fieldb from table (failed) select fielda, sum(fieldb) from table group by fiel

如果我使用该查询返回表中的一些基本列,就可以了。但是,如果使用group by、order by、sumcolumn或选择指定的列,查询将无法运行

我使用游标查询方法或rawquery,两者都相同。如果我在adb shell中运行以下查询,那么它可以正常工作

select * from table (work)
select fielda, fieldb from table (failed)
select fielda, sum(fieldb) from table group by fielda (failed)
select * from table where strftime('%m',field)='09'
select * from table where strftime('%Y',field)='2010'
以下查询工作正常

select * from table (work)
select fielda, fieldb from table (failed)
select fielda, sum(fieldb) from table group by fielda (failed)
select * from table where strftime('%m',field)='09'
select * from table where strftime('%Y',field)='2010'
有人知道这些查询是怎么失败的吗? 有什么规则我需要遵守吗

我的表包含六列。类别、项目、说明、价格、时间、标志 所有查询都可以在adb shell中毫无问题地返回

select * from table (work)
select fielda, fieldb from table (failed)
select fielda, sum(fieldb) from table group by fielda (failed)
select * from table where strftime('%m',field)='09'
select * from table where strftime('%Y',field)='2010'
这是我的发现。 1.根据从微调器中选择的月份和年份,它将在listview中显示项目、价格和时间列。时间为YYYY-MM-DD格式。所以我使用select*from-table,其中strftime为m%',time='05',select*from-table,其中strftime为'%Y',time='2010'。没有问题。然后我将光标结果放入simplecursoradapter,然后将适配器放入listview。它运行没有问题

我想展示一个视图,该视图总结了所有类别以及该类别的总价。所以我使用selectcategories,从表中按类别分组。我也尝试使用totalprice,但它仍然是一样的,当我执行时程序失败了。我使用rawquery或querybuilder,但结果是相同的

如果我不使用group by、order by、having,只包括基本列类别、项目、说明、价格、时间、标志,则不会有问题。若我使用聚合函数,查询将失败

我尝试从XML定义或Java代码动态创建布局。问题还是一样。但是所有查询在adb shell下都可以正常运行,没有问题


所以我不知道这里发生了什么。任何人都可以在Android中分享您在sqlite中的经验?

您执行它们所使用的代码是什么?请使用Eclipse中的adb logcat、DDMS或DDMS透视图来检查与您的失败相关的堆栈跟踪。请注意,当涉及到sqlite的查询支持时,它比SQL Server小得多。因此,一些复杂的查询将无法直接使用SQLite。