я есть ошибка с этим запросомпружинные данных JPA максимальная совокупная функция где положение
@Repository
public interface DefinedAbsenceRepository extends
JpaRepository<DefinedAbsence, Long>,
JpaSpecificationExecutor<DefinedAbsence> { @Query("select da from defined_absence da where da.length=?1 and max (da.from, ?2) < min (da.to , ?3) ")
List<DefinedAbsence> getLongDefinedAbsenceWithinPeriod(
AbsenceLength length, LocalDateTime from, LocalDateTime to);
}`
и это класс
public class DefinedAbsence extends BaseBean {
public static enum AbsenceJustification {
JUSTIFIED, UNJUSTIFIED
}
private LocalDateTime from;
private LocalDateTime to;
private AbsenceLength length;
private String description;
//geter()+setter()
}
Я использую конвертер для времени Joda
в ошибка Caused by: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.JPQLException Exception Description: Syntax error parsing [select da from defined_absence da where da.length=?1 and max (da.from, ?2) < min (da.to , ?3) ]. [59, 70] The right expression is not a valid expression. [72, 95] The query contains a malformed ending.
Не могли бы вы добавить свое определение 'DefinedAbsence' и' AbsenceLength'? –
Я добавляю класс DefinedAbsence, я думаю, что мне нужно использовать «иметь» или «упорядочить», потому что агрегатная функция «max» и «min» не может использоваться в th, где пункт –
'ORDER BY' не является агрегирующим предложением , вы имеете в виду 'GROUP BY'. –