Как эффективно запрашивать данные из списков с помощью пакетовMySql

Форум по Mysql
Anonymous
Как эффективно запрашивать данные из списков с помощью пакетов

Сообщение Anonymous »

У меня есть пакеты xId, yId и zId в виде списка, и мне нужно найти их в БД, используя условия Where. Есть ли способ наиболее эффективно их найти?

Код: Выделить всё

val bundledList = listOf(
listOf(1, 1, 1),
listOf(2, 2, 2),
listOf(3, 3, 3),
...
)

bundledList
.map { (xId, yId, zId) ->
repository.findByXIdAndYIdAndZId(xId, yId, zId)
}
Думаю, список будет до 1000.

Код: Выделить всё

bundledList
.distinctBy { (xId, yId, zId) ->
xId
}
.map {
repository.findByXId(it)
}
.groupBy {
Triple(it.xId, it.yId, it.zId)
}
Количество элементов xId довольно велико, поэтому я тоже попробовал это.
Я пробовал это, но не добился такой производительности, как хотелось.
Я хочу найти более эффективный способ.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... th-bundles

Вернуться в «MySql»