Hello > -----Original Message----- > From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of vod vos > Sent: Sonntag, 12. März 2017 08:01 > To: Pavel Stehule <pavel.stehule@xxxxxxxxx> > Cc: pgsql-general <pgsql-general@xxxxxxxxxxxxxx> > Subject: Re: How to define the limit length for numeric type? > > Maybe CHECK (goose >= 100 AND goose <= -100) works better, But if : > > INSERT INTO test VALUES (1, 59.2); > INSERT INTO test VALUES (1, 59.24); > INSERT INTO test VALUES (1, 59.26); > INSERT INTO test VALUES (1, 59.2678); > > The INSERT action still can be done. What I want is just how to limit the length of the insert value, you can just > type format like 59.22, only four digits length. You may change (or extend) the CHECK condition using regexp: SELECT 59.2::TEXT ~ '^[0-9]+\.[0-9]{2}$'; ?column? ---------- f SELECT 59.24::TEXT ~ '^[0-9]+\.[0-9]{2}$'; ?column? ---------- t SELECT 59.26::TEXT ~ '^[0-9]+\.[0-9]{2}$'; ?column? ---------- t SELECT 59.2678::TEXT ~ '^[0-9]+\.[0-9]{2}$'; ?column? ---------- f Of course you can change the part left of the dot to also be limited to 2 digits. Regards Charles > > Thank you. > > > ---- On 星期六, 11 三月 2017 22:25:19 -0800 Pavel Stehule <pavel.stehule@xxxxxxxxx> wrote ---- > > > 2017-03-12 > 7:14 GMT+01:00 vod vos <vodvos@xxxxxxxx>: > > > > Hi everyone, > > > > How to define the exact limit length of numeric type? For example, > > CREATE TABLE test (id serial, goose > numeric(4,1)); > > 300.2 and 30.2 can be inserted into COLUMN goose, but I want 30.2 or 3.2 can not be inserted, > how to do this? > > > > ostgres=# CREATE TABLE test (id serial, goose numeric(4,1));CREATE TABLETime: 351,066 mspostgres=# insert into > test values(1,3.2);INSERT 0 1Time: 65,997 mspostgres=# select * from test;┌────┬───────┐│ id │ goose > │╞════╪═══════╡│ 1 │ 3.2 │└────┴───────┘(1 row)Time: 68,022 ms > > Regards > > Pavel > > Thank you. > > > > > > > > -- > > Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) > To make changes to your subscription: > > http://www.postgresql.org/mailpref/pgsql-general > > > > > > > > -- > Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general