Android Sqlite中的GROUP BY/HAVING子句失败
在一个列表中,我有一个项目:商店。 店铺id相同,但组id不同。 主键是shop\u id、group\u id 第一次显示列表时,我想对这2个进行分组(因为它是同一个商店) 在下一个屏幕中 因此,我的问题是: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
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时,我想首先对它们进行分组。请您提供一个表格示例:您拥有什么和想要得到什么?