Joe Conway <mail@xxxxxxxxxxxxx> writes: > On 11/10/22 14:52, Philip Semanchuk wrote: >> I have seen conversations that suggest creating a custom IMMUTABLE >> function to perform the cast, but I can't figure out how to do that >> except with a CASE statement that enumerates every possible value. Is >> there a more elegant approach? > CREATE OR REPLACE FUNCTION mood2text(mood) > RETURNS text AS > $$ > select $1 > $$ STRICT IMMUTABLE LANGUAGE sql; Of course, what this is doing is using a SQL-function wrapper to lie about the mutability of the expression. Whether you consider that elegant is up to you ;-) ... but it should work, as long as you don't break things by renaming the enum's values. regards, tom lane