Как эффективно запрашивать данные из списков с помощью пакетов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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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