а у этой тулзы нет возможности настройки логирования? В любом случае, можно попытаться поиграться уровнем логгирования jdbc-драйвера (там прямо в строке подключения можно настроить), авось там запрос где-то выведится полностью. см. https://jdbc.postgresql.org/documentation/head/logging.html
ну именно так, как я указал, должно тоже работать. Суть в том, что IN ожидает в скобках либо подзапрос, либо список значений через запятую. А ANY ожидает массив. У вас как раз массив.
И да, для SELECT -- работают все пять вариантов, EXISTS, .. IN/NOT IN, .. op ANY/ALL. А для списков -- только IN/NOT IN, для массивов -- только ANY/ALL. Ну ладно, EXISTS положым не очень нужэн... Но остальное-то.
ilan=*> SELECT id IN (unnest(ARRAY[1,2])) FROM books; ОШИБКА: аргумент конструкции IN не должен возвращать множество СТРОКА 1: SELECT id IN (unnest(ARRAY[1,2])) FROM books;
ilan=*> SELECT id IN (SELECT * FROM unnest(ARRAY[1,2])) FROM books; ?column? ---------- t t f (3 строки)