I am trying to do some record comparisons using IS DISTINCT FROM and I feel like I am missing something. Basically comparisons between manually constructed records work as expected, but if I have a record returned by a select on one (or both sides) of the comparison I get errors "ERROR: operator does not exist: record = record". I suspect some simple missing parentheses/syntax issue but I feel like I have tried everything...
The simplest way to reproduce: select ((1::int,'a'::varchar) is distinct from (2::int,'a'::varchar)); --> true, as expected select ((1::int,'a'::varchar) is distinct from (select (2::int,'a'::varchar))); --> throws the error Both (1::int,'a'::varchar) and (select (2::int,'a'::varchar)) are of type record, aren't they? In real life I want the right side of the IS DISTINCT FROM to be the result of a query to a table. Please help. Thanks! George ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster