我有一个查询,它使用GROUP BY,以便按日期列对结果进行分组。我的问题是这样的:

当我在游标上移动以获取查询结果时,如何将与每个组关联的多个项放入向量中?例如,我想同时获得2010年10月16日的“商品X”和“商品Y”。目前,我分别获得了它们。这是我的代码:

Vector<Event> v = new Vector<Event>();
Event e;

 detailCursor.moveToFirst();
 while (detailCursor.isAfterLast() == false) {
      e = new Event();
      e.setEventDate(detailCursor.getString(detailCursor
                .getColumnIndex("eventDate")));
      e.setItem(detailCursor.getString(detailCursor
                .getColumnIndex("Item")));

      v.add(e);

      detailCursor.moveToNext();
 }
detailCursor.close();


因此,当我从Vector获得结果时,我将得到:

2010年10月12日
-项目X

2010年10月12日
-项目Y

而且我要:

2010年10月12日-X项,Y项

是的,我必须更改Vector才能支持多个项目,但希望您能解决我面临的问题...

谢谢!

最佳答案

如果您的数据是由SQLite提供的,则需要更改查询并在这种情况下使用GROUP_CONCAT(col)

这会将一个值组合为同一组的所有子值。

08-27 15:53