Есть ли у кого есть ключ к тому, почему ключевое слово DISTINCT удаляется из запроса при использовании DataNucleus (это программное обеспечение, в котором я работаю для использования)? Мне удалось отладить код и проверить, действительно ли ключевое слово связано с запросом. Но к тому времени эта функция вызывается в JPAEntityManagerКлючевое слово DISTINCT удаляется из запроса
createQuery(CriteriaQuery<T> criteriaQuery)
неповторяющиеся ключевое слово удаляется. Отладка показала мне, что это как-то связано с
criteria.getCompilation(ec.getMetaDataManager(), ec.getClassLoaderResolver());
функция call. Как-то функция createQuery() отлично работает с SELECT COUNT (DISTINCT DN_THIS), но не с SELECT DISTINCT FROM.
Я надеюсь, что у некоторых из вас есть хотя бы небольшая идея, где проблема, поскольку я довольно новичок в JPA и SQL-запросах в целом, что я не могу найти быстрое решение самостоятельно.
Запрос Я пытаюсь выполнить это следующим образом:
SELECT DISTINCT DN_THIS FROM Hop DN_THIS JOIN DN_THIS.tags t WHERE ((DN_THIS.entityStatus <> 'DELETED') AND ((t.name = :DN_PARAM_4) OR (t.name = :DN_PARAM_5))) ORDER BY DN_THIS.name ASC
Спасибо!
Пожалуйста, добавьте ваш SQL-запрос к вопросу. – heikkim
Теперь он отредактирован. – trashed
почему бы не определить используемый вами критерий ?, а затем опубликовать то, что является toString() критерияQuery? и что находится в журнале при его выполнении –