AndroidRoomKotlin如何从数据库中随机获取一个对象?
创始人
2024-10-09 20:02:06
0

要从数据库中随机获取一个对象,可以使用SQL语句中的ORDER BY和RANDOM函数。首先,在DAO中定义一个函数,该函数返回一个随机的对象:

@Query("SELECT * FROM my_table ORDER BY RANDOM() LIMIT 1")
fun getRandomObject(): MyObject

在上面的例子中,my_table是你要从中获取随机对象的表的名称。还要替换MyObject为表中对象的数据类型。

然后,您可以在ViewModel中调用此函数,并在LiveData对象中返回结果:

class MyViewModel(application: Application) : AndroidViewModel(application) {
    private val repository: MyRepository = MyRepository(application)
    val randomObject: LiveData = repository.getRandomObject()
}

最后,在Activity或Fragment中观察LiveData对象:

viewModel.randomObject.observe(this, Observer { myObject ->
    // 显示随机对象
})

这将在每次观察到LiveData对象时显示一个随机的对象。

相关内容

热门资讯

科技新动态!四川途游小程序辅助... 科技新动态!四川途游小程序辅助软件(辅助挂)红龙poker作弊指令(从前真的有挂)是一款可以让一直输...
一分钟教你!桂麻圈辅助(辅助挂... 一分钟教你!桂麻圈辅助(辅助挂)hhpoker透视脚本视频(往昔存在有挂)是一款可以让一直输的玩家,...
推荐一款!新超圣辅助靠谱不(辅... 推荐一款!新超圣辅助靠谱不(辅助挂)大菠萝免费辅助器(好像存在有挂);新超圣辅助靠谱不中的10万兆豆...
普及知识!爱游辅助app(辅助... 《普及知识!爱游辅助app(辅助挂)steampokermaster辅助(确实有挂)》 爱游辅助ap...
重大科普!老友广东插件软件(辅... 重大科普!老友广东插件软件(辅助挂)hhpoker是真的吗(好像有挂)是一款可以让一直输的玩家,快速...
玩家亲测!牵手辅助神器下载(辅... 玩家亲测!牵手辅助神器下载(辅助挂)竞技联盟透视(原生是真的有挂);牵手辅助神器下载最新软件透明挂直...
必备攻略!jj斗地主麻将外挂(... 必备攻略!jj斗地主麻将外挂(辅助挂)wepoker新号好一点吗(一直存在有挂);jj斗地主麻将外挂...
发现一款!微乐小程序辅助器代理... 发现一款!微乐小程序辅助器代理(辅助挂)wepoker怎么拿到好牌(起初真的有挂);1、很好的微乐小...
玩家攻略推荐!聚友联盟辅助器(... 玩家攻略推荐!聚友联盟辅助器(辅助挂)aapoker辅助插件工具(原先存在有挂);人气非常高,ai更...
重大推荐!奇迹掌趣辅助(辅助挂... 重大推荐!奇迹掌趣辅助(辅助挂)wpk有作弊吗(总是真的有挂);奇迹掌趣辅助是一款益智类棋牌手游,可...