Как сделать каст строки в int SQL

 @Query("select b from Book b join b.authors a" +
        " where b.title" +
        " like %:key%" +
        " or b.year like %:key%" +
        " or a.name like %:key%" +
        " or a.lastName like %:key% " +
        " or a.size = :key (ЧТО ТУТ СДЕЛАТЬ?)" +
        " group by b")
Page<Book> findAllBooksByAnyKeyword(@Param("key") String key, Pageable pageable);

У меня есть вот такой метод

Мне нужно скастить строку @Param("key") String key в значение int дабы получить значение размера коллекции a.size Как это сделать в моем случае?


Ответы (1 шт):

Автор решения: AlekseiGaile
or a.size = CAST(:key as bigint)

Для postgres это работает.

Есть еще такой вариант, но он зачастую не работает в подобных запросах -

or a.size = :key::bigint
→ Ссылка