Мне нужен союз Equivelant для Союза.Я знаю, что мы можем сделать это, соединяя выборки, но я не мог сделать это для добавления константы в результаты запроса.Вот мой sql
SELECT MIN(t1.EXAMPLE_NUMBER)
FROM
(
SELECT 1 AS EXAMPLE_NUMBER
UNION ALL
SELECT EXAMPLE_NUMBER + 1
FROM selection.SELECTION
) t1
LEFT OUTER JOIN selection.SELECTION t2
ON t1.EXAMPLE_NUMBER = t2.EXAMPLE_NUMBER
WHERE t2.EXAMPLE_NUMBER IS NULL;
Этот запрос нужен для поиска минимального неиспользуемого целого числа для столбца.Скажем:
EXAMPLE_NUMBER
1
4
5
Мне нужно получить 2 в результате для этого случая.Это sql для этого.Итак, вот мой вопрос:
Я использую QueryDsl-JPA для этого.С JPA 2 я не могу использовать UNION.Так что я не могу сделать этот sql с querydsl-jpa, я думал о идти так:
JPAQuery baseQuery = new JPAQuery(em);
SubQueryExpression handleNumberOne = baseQuery.select(Expressions.constant(1));
SubQueryExpression selectAvailableMinNumber = baseQuery.select(selection.exampleNumber.add(1)).from(selection);
baseQuery.union (handleNumberOne, selectAvailableMinNumber);// НЕТ СОЮЗА В НАЛИЧИИ
Есть ли доступный способ сделать это с помощью querydsl-JPA?Я не хочу включать библиотеку querydsl-sql просто по этой причине, я ищу решение в стиле JPA.То, что я пытался так, чтобы попытаться добавить константу (1 в моем случае) к результату запроса выбора без объединения.Таким образом, я могу продолжить.Любое предложение?