Генерация собственных запросов JPA с COUNT (DISTINCT obj)

пожалуйста, помогите мне с запросом JPQL на OpenJPA 1.2.x Вот текст моего запроса:

выберите количество (различное событие) из события события ГДЕ (evt.beginDate >= :startOfPeriod и evt.beginDate ‹= :endOfPeriod) ORDER BY evt.beginDate asc

Во время выполнения я получаю сообщение об ошибке:

org.apache.openjpa.persistence.ArgumentException: Ошибка SQL DB2: SQLCODE = -119, SQLSTATE = 42803, SQLERRMC = BEGIN_DATE, DRIVER = 3.59.81 {prepstmnt 1520523937 SELECT COUNT (DISTINCT t0.ID), t0.BEGIN_DATE FROM COMPANY. EVENT t0 WHERE (t0.BEGIN_DATE >= ? AND t0.BEGIN_DATE ‹= ?) оптимизировать для 1 строки [params=(Timestamp) 2010-12-14 00:00:00.0, (Timestamp) 2010-12-14 23:59 :59.999]} [код=-119, состояние=42803]

Почему JPA печатает поле t0.BEGIN_DATE в предложении select? Почему JPA пропустил предложение ORDER BY в собственном SQL? Например, этот запрос (без t0.BEGIN_DATE в предложении select) действителен:

SELECT COUNT(DISTINCT t0.ID) 
    FROM CALENDAR.EVENT t0
    WHERE (t0.BEGIN_DATE >= null AND t0.BEGIN_DATE <= null)

Я установил null только для успешного выполнения SQL-запроса

Это какой-то баг?


person Capacytron    schedule 13.12.2010    source источник


Ответы (1)


О, чувак... просто удали "ORDER BY evt.beginDate asc". Такой глупый. Считаю, заказывать не надо... Проблема решилась сама. Извините за беспокойство.

person Capacytron    schedule 13.12.2010