#quarkus #reactive
Вопрос:
Как передать список идентификаторов для запроса.
List<Long> ids;
...
client.preparedQuery("SELECT id, name FROM features WHERE id IN $1").execute(Tuple.of(ids))
Когда я передал этот запрос, произошла ошибка со словами invalid syntax near IN
Ответ №1:
Вы должны использовать ANY
оператора:
client.preparedQuery("SELECT id, name FROM fruits WHERE id = ANY($1)")
.execute(Tuple.of(ids.toArray(new Long[ids.size()])));
С IN
помощью оператора нужно указать каждый параметр, с ANY
помощью которого вы можете передать массив.
Комментарии:
1. Я думаю, что синтаксис не поддерживается
2. Не могли бы вы сообщить мне версию библиотеки, которую вы используете?
3. Кваркус 1.13.3 ссылка
4. Вероятно, это невозможно. Я задал этот вопрос разработчикам, я обновлю ответ, когда они ответят
5. Я нашел правильное решение. Это сработает.