У меня есть таблица, которая ежедневно заполняется записями из систем отчетности.
У меня есть список серийных номеров тех, кого я заинтересован в возвращении в список активов.
Как заставить Grails возвращать записи, которые соответствуют максимальной записи "эпохи" для каждого актива? В sql я бы скрестил таблицу обратно к себе после выбора максимума, такого как:
select a.* from assetTable a inner join (select sn, max(epoch) epoch from assetTable group by sn) b on a.sn = b.sn and a.epoch = b.epoch
но я не могу понять, как сделать это эффективно с Grails ...
С точки зрения класса домена это довольно просто. Рассмотрим для того же примера, что у меня есть один класс домена «AssetTable», и он имеет целую эпоху, String sn, ...
В буквальном смысле, все, что я хочу сделать, это получить последнюю запись (все поля) для подмножества серийных номеров (sn), которые у меня есть в списке.