如何在不使用SELECT查询的情况下获取Room持久性数据库中具有布尔值true(或1)的行数?

Pri*_*iya 16 database android boolean-operations booleanquery android-room

我在我的项目中使用Room持久性数据库.我有一个表,其中有一个布尔值列,如0或1,现在我想要所有布尔值的计数,其值为true(或1).

我知道我可以通过使用where子句获取所有选定行的计数来使用select查询实现此目的!

但我不想使用选择查询与where子句为此,因为它将加载所有行,然后我将得到计数,但我想要计数而不加载任何行!建议其他简单的解决方案!谢谢!

Pri*_*iya 37

最后我得到了完美的解决方案!只需在DAO类中添加此方法,如下所示:

@Query("SELECT COUNT(is_checked) FROM table WHERE is_checked = 1")
int getNumberOfRows();
Run Code Online (Sandbox Code Playgroud)

全部感谢Florina Muntenescu,网址https://medium.com/@florina.muntenescu

  • 作为参考,我相信感谢 [评论](https://medium.com/@alachiyapriyanka/hi-maam-do-you-know-how-can-i-get-total-number-of-rows -in-a-table-using-room-database-without-643dbdb63998) 在 [这篇 Medium 文章](https://medium.com/google-developers/7-steps-to-room-27a5fe5f99b2) (2认同)