Я хотел бы получить результат запроса, используя rowMode = "array" (поскольку это потенциально очень большая таблица, и я не хочу, чтобы она была отформатирована в объектный формат), но я не мог понять, как передать в параметре массива / списка для использования в операторе IN.
const events = await t.manyOrNone({text: `select * from svc.events where user_id in ($1:list);`, rowMode: "array"}, [[1,2]]);
Однако приведенное выше выдает ошибку: синтаксическая ошибка около или около «:»
Удаление: list не привело к работать либо:
const events = await t.manyOrNone({text: `select * from svc.events where user_id in ($1);`, rowMode: "array"}, [[1,2]]);
Ошибка: недопустимый синтаксис ввода для целого числа: "{" 1 "," 2 "}"
Я понимаю, что это может быть потому, что я вынужден использовать Формат ParameterizedQuery для rowMode = "array", который не позволяет использовать такие шикарные модификаторы, как: list, но тогда возникает вопрос: если бы я использовал формат ParameterizedQuery, то как мне изначально передать массив Javascript, чтобы он приемлемо для драйвера?
Думаю, альтернативная формулировка этого вопроса: как использовать массивы в качестве параметров для ParameterizedQuery или PreparedStatements ...