У меня возникли трудности с представлением этого запроса, который я пишу для выбора максимальных месяцев и максимальных строк года из заданного «uid». У меня есть 6 данных, в которых 3 данных имеют uid '4', а у других 3 - uid '5'. Я хочу получить максимальные месячные и максимальные данные года из uid 4 и 5. Вот мой запрос критериев. Я получаю этот результат.Таблица сортировки спящего режима на основе максимального года и максимального месяца и группы по идентификатору с использованием критериев
Размер списка результатов: 2
UID: 5 НДИ: CDF Месяц: 11 Год: 2012
UID: 4 НДИ: f58 Месяц: 10 Год: 2012
Но когда я изменить год uid с 2012 по 2013 год, он возвращает только номер uid 4.
DetachedCriteria maxYearQuery = DetachedCriteria.forClass(Demo.class);
ProjectionList yearProj = Projections.projectionList();
yearProj.add(Projections.max("contextYear"));
yearProj.add(Projections.max("contextMonth"));
yearProj.add(Projections.groupProperty("entityUUID"));
maxYearQuery.setProjection(yearProj);
Criteria crit = session.createCriteria(Demo.class);
crit.add(Subqueries.propertiesIn(new String[] {"contextYear","contextMonth", "entityUUID"}, maxYearQuery));
crit.addOrder(Order.desc("entityUUID"));
моя таблица выглядит следующим образом ..
>
UID: 4 НДИ: CDF Месяц: 10 Год: 2012
UID: 4 НДИ: f58 Месяц: 9 Год : 2012
UID: 5 НДИ: f58 месяц: 8 Год: 2012
UID: 5 НДИ: f58 месяц: 11 Год: 2012
UID: 5 НДИ: f58 Месяц: 10 Год: 2013
UID: 4 НДИ: f58 Месяц: 9 Год: 2012
Я хочу, чтобы 1-й и 5-й записи из моей базы данных. Я застрял на этом этапе. Пожалуйста, дайте несколько рекомендаций, чтобы получить запись по группам.
Заранее спасибо.
Спасибо Dheeraj Да, я хочу такой же тип запроса. Вышеуказанный запрос работает хорошо, но за тот же год. Когда я меняю год, он возвращает только один результат. – James
Он должен вернуть весь объект не только максимум месяца и года. – James