Potresti creare un tipo composito come
CREATE TYPE triple AS (
a smallint,
b integer,
c integer
);
Quindi potresti scrivere la query in questo modo:
SELECT *
FROM t
WHERE (t.one, t.two, t.three) = ANY (?::triple[]);
Forniresti l'array come una singola stringa simile a
{(11\,12\,13), (21\,22\,23)}
= ANY
fa lo stesso di IN
, ma può essere utilizzato con un array sul lato destro.