Я хочу найти все ведра, где хотя бы одна транзакция ОТКАЗАНА, но не все. В идеале мне хотелось бы получить карту с ключом = bucket_id и value = ids в одном запросе.JPQL having with существует
id | bucket_id | status
1 | 1 | 'AVAILABLE'
2 | 1 | 'AVAILABLE'
3 | 1 | 'REJECTED'
4 | 2 | 'REJECTED'
5 | 2 | 'REJECTED'
6 | 2 | 'REJECTED'
Мой текущий не работает запрос:
SELECT distinct t.bucket_id, t.id
FROM Transaction t
GROUP BY t.bucket_id, t.id
HAVING
EXISTS (select t.id FROM t WHERE t.status=REJECTED)
AND
EXISTS (select t.id FROM t WHERE t.status<>REJECTED)
В результате этого запроса я получаю оба ведра 1 и 2.
Как я могу выразить условие: «по крайней мере один отвергнут, но не все "в предложении HAVING?
Может быть более двух статусов, спасибо вам за ответ! – mfudi