Android Sqlite中的GROUP BY/HAVING子句失败

Android Sqlite中的GROUP BY/HAVING子句失败,android,sqlite,Android,Sqlite,在一个列表中,我有一个项目:商店。 店铺id相同,但组id不同。 主键是shop\u id、group\u id 第一次显示列表时,我想对这2个进行分组(因为它是同一个商店) 在下一个屏幕中 因此,我的问题是: SELECT * FROM TABLE_SHOP GROUP BY ID 但是,当我处理它时,我需要用字段“done”=0/1来分隔商店 如果done=1,我将禁用该元素 我试图添加一个条款: SELECT * FROM TABLE_SHOP GROUP BY ID HAVIN

在一个列表中,我有一个项目:商店。 店铺id相同,但组id不同。 主键是shop\u id、group\u id

第一次显示列表时,我想对这2个进行分组(因为它是同一个商店) 在下一个屏幕中

因此,我的问题是:

SELECT  * FROM TABLE_SHOP  GROUP BY ID
但是,当我处理它时,我需要用字段“done”=0/1来分隔商店

如果done=1,我将禁用该元素

我试图添加一个条款:

 SELECT  * FROM TABLE_SHOP GROUP BY ID HAVING DONE =0
但是,当一个完成后,商店不再出现在列表中。(而不是显示一个已禁用,一个已启用)

你知道名单上有什么地方不及格吗

编辑:

我更改了字段名称以匹配图片。 在这种情况下,我想显示列表。 第一次显示时(0中的所有完成字段),我希望商店25975(2条记录)只显示一次(这就是我使用GROUP BY的原因)

然后,当我处理一个商店时,它会将他的“完成”字段更新为1


所以在这一刻,我不想再分组这两行了。更清楚吗?

have子句的目的是使用聚合函数进行过滤。 请尝试以下方法: 从表TIENDA中选择*其中TIENDA\U DONE=0按TIENDA\U ID分组

我让它工作了

问题是:

SELECT * FROM TABLE_TIENDA WHERE TIENDA_DONE = 0 GROUP BY TIENDA_ID, DONE

Tx感谢您的帮助

但是在这里,我不会看到TIENDA_DONE=1的商店。我需要将其保留在列表中,这样我就不能禁用itSo,你想让所有商店都可见吗?如果是这样,你所说的“分店”是什么意思?如果您希望将“完成”店铺与“撤消”店铺分开,例如,所有“完成”店铺都列在列表的顶部,您可以使用ORDER BY子句:SELECT*from TABLE_TIENDA ORDER BY TIENDA_done,TIENDA_ID,GROUP_ID。当TIENDA_done=0时,我想首先对它们进行分组。请您提供一个表格示例:您拥有什么和想要得到什么?