b varchar(16)
);
как написать запрос where in <array_of_tp_x>?
имею примерно такой запрос
select (x.a, x.b)::tp_x as xt from table_a a, table_b b, table_c c
where a.rel_id = b.id and b.rel_id = c.id
group by xt;
нужно в where еще как-то впихнуть массив пар (это мой тип tp_x)
WITH tmp(xt) AS (VALUES ((5, 'a')::tp_x), ((6, 'b')::tp_x), ((7, 'c')::tp_x)) SELECT tmp.xt FROM tmp WHERE tmp.xt = ANY (ARRAY[(5, 'a')::tp_x, ((7, 'c')::tp_x), ((8, 'd')::tp_x)]) А зачем Вам эти ужасы, кстати? ;)
Обсуждают сегодня