Java 房间-使用MAX(numUsage)获取对象

Java 房间-使用MAX(numUsage)获取对象,java,android,dao,android-room,Java,Android,Dao,Android Room,我正在使用Android Studio和Room库,但有一个小问题。 我的实体类有一个名为numUsage Integer的值 但是我不知道如何编写我的DAO查询来获取具有MAX/MINnumUsage的一行/条目的LiveData 所以基本上我想知道最高和最低数字的对象/条目 F.e。 条目号。1有5个numUsage点 条目号。2有2个numUsage点 我想得到1号入口的所有信息-因为它有最高点 我试过类似的东西 @Query("SELECT * FROM subscriptions WH

我正在使用Android Studio和Room库,但有一个小问题。 我的实体类有一个名为numUsage Integer的值 但是我不知道如何编写我的DAO查询来获取具有MAX/MINnumUsage的一行/条目的LiveData

所以基本上我想知道最高和最低数字的对象/条目

F.e。 条目号。1有5个numUsage点 条目号。2有2个numUsage点

我想得到1号入口的所有信息-因为它有最高点

我试过类似的东西

@Query("SELECT * FROM subscriptions WHERE (SELECT MAX(numUsage) FROM subscriptions)")
LiveData<Sub> getTopSub();
但这似乎是错误的,因为我总是得到一个错误,我返回的是一个空对象

我之所以使用LiveData,是因为在使用该应用程序时,您可以为条目提供更多numUsage点数,以便跟踪它


也许这是一个相当简单的问题,但我就是找不到合适的答案

有一种惯用的方法获取具有max/min值的行。以你为例,

@Query("SELECT * FROM subscriptions ORDER BY numUsage DESC LIMIT 1")
LiveData<Sub> getTopSub();