Я хочу выбрать строки с двоичным значением в предложении WHERE. Двоичное значение находится в HEX: "07F4"
Следующий оператор HQL не работает ("неожиданный токен X").
from Agprfw where prfdatk1 = X'07F4'
Для ['0x07F4'] я получаю 0 строк, что неверно. Для [0x07F4] я получаю исключение (NumberFormatException: для входной строки: "0x07F4").
Попробуй это:
byte[] param = new byte[]{ 0x07, 0xf4};
List<Agprfw> rslt = em.createQuery("from Agprfw a where a.prfdatk1 = :b", Agprfw.class)
.setParameter("b", param)
.getResultList();
Ссылка на столбец как alias.column
важна в JPQL, поэтому не пропускайте ее.
Я нашел решение:
from Agprfw where HEX(prfdatk1) = '07F4'
where prfdatk1 = '0x07F4'
илиwhere prfdatk1 = 0x07F4
работает?