how to find details of a domain type? - Mailing list pgsql-novice

From Jean-Yves F. Barbier
Subject how to find details of a domain type?
Date
Msg-id 20111107232004.163da7b5@anubis.defcon1
Whole thread Raw
Responses Re: how to find details of a domain type? - [SOLVED]
List pgsql-novice
Hi list,

I've a function:

SELECT D.typname as domname, format_type(b.oid,NULL) as dombasetype,
    D.typlen, D.typtypmod, D.typnotnull, D.typdefault, D.typndims, D.typdelim, C.consrc
    FROM pg_type D
    JOIN pg_type B ON B.oid = CASE WHEN B.typndims > 0 then D.typelem ELSE D.typbasetype END
    JOIN pg_namespace N ON N.oid = B.typnamespace
    JOIN pg_constraint C ON (D.typname || '_check') = C.conname
    WHERE D.typtype = 'd' AND D.typnamespace = 2200::oid ORDER BY D.typname;

that returns (not complete):

domain name    | domain type | length(+typlen) | not null? | default  | constraint
dn_percent_vat | numeric     |          458762 | t         | 0.196000 | ((VALUE > -0.000001) AND (VALUE < 1.000001))

As 'length(+typlen)' returns 20 for 'varchar(16)', and min length of type
'character varying' is 4, 20-4=16 check ok.

However, I don't see how to extract 'numeric(7, 6)' from '458762' (IF it
should be extract from that value!)

How can I do that?

JY
--
Here's to women.  Would that we could fall into her arms without falling
into her hands. -- Ambrose Bierce

pgsql-novice by date:

Previous
From: Tom Lane
Date:
Subject: Re: complete uninstall of postgres 9.0.4
Next
From: "Jean-Yves F. Barbier"
Date:
Subject: Re: how to find details of a domain type? - [SOLVED]