如何使用暴露的Kotlin只选择几个字段?

des4xlb0  于 2022-12-19  发布在  Kotlin
关注(0)|答案(1)|浏览(157)

我有一个包含2,600,000条记录的大型数据库,我想通过循环遍历所有记录来对它进行一些高级搜索,但是,使用selectAll()运行脚本需要很长的加载时间。
作为一种解决方法,我使用以下代码将超过100,000条记录循环26次:

for (i in 1..26) {
    transaction {
        for (app in AppsTable.selectAll().limit(n = 100000, offset = i * 100000L)) {

            //..analysis
        }
    }
}

我怎样才能加快这个查询,或者如果可能的话,我怎样才能减少查询集,只查询我需要处理的列?例如,我可以这样做吗?
AppsTable.selectAll(AppsTable.name, AppsTable.downloadCount, AppsTable.developerId)

juzqafwq

juzqafwq1#

只需在selectAll()之前使用slice()方法,如下所示:

AppsTable.slice(AppsTable.name, AppsTable.downloadCount, AppsTable.developerId)
         .selectAll()
         .limit(n = 100000, offset = i * 100000L)

相关问题