У меня есть таблица в базе данных mysql (транзакция хранилища). В нем есть столбцы: itemid, warehouseid, дата, движение (в количествах) и баланс.
Пример:
Id | Date | ItemId | WarehouseId | Movement | Balance
1 | 01-01-2020 01:00 | 1 | 1 | 100 | 100
2 | 01-01-2020 02:00 | 1 | 1 | -10 | 90
3 | 01-01-2020 03:00 | 3 | 1 | 50 | 50
4 | 01-01-2020 03:00 | 1 | 1 | -5 | 85
5 | 02-01-2020 01:00 | 1 | 1 | -5 | 80
6 | 02-01-2020 02:00 | 1 | 1 | -10 | 70
7 | 02-01-2020 03:00 | 2 | 1 | 200 | 200
8 | 04-01-2020 01:00 | 1 | 1 | -20 | 50
9 | 04-01-2020 02:00 | 2 | 1 | -20 | 180
Итак, если я хочу узнать позиции баланса на складе 1 на 02-01-2020, это должно дать мне результат:
3 | 01-01-2020 03:00 | 3 | 1 | 50 | 50
6 | 02-01-2020 02:00 | 1 | 1 | -10 | 70
7 | 02-01-2020 03:00 | 2 | 1 | 200 | 200
Идентификаторы 3, 6 и 7 являются последней записью для ItemId 1, ItemId 2 и ItemId 3.
Возможно ли это получить этот результат в одном запросе JPA? Если да, может ли кто-нибудь помочь мне с запросом? или может быть mysql запрос?
Моя цель, я хочу выполнить один запрос, чтобы избежать нескольких запросов.
Я могу получить его в одном запросе для каждого товара и склада. Это нормально, когда есть 10 предметов. Но когда есть 100 или более элементов, он будет выполнять более 100x запросов.
Спасибо.