Můžete vytvořit složený typ jako
CREATE TYPE triple AS (
a smallint,
b integer,
c integer
);
Pak byste mohli napsat dotaz takto:
SELECT *
FROM t
WHERE (t.one, t.two, t.three) = ANY (?::triple[]);
Pole byste dodali jako jeden řetězec, který vypadá jako
{(11\,12\,13), (21\,22\,23)}
= ANY
dělá to samé jako IN
, ale lze jej použít s polem na pravé straně.