Determine length of numeric field - Mailing list pgsql-sql

From Tony Capobianco
Subject Determine length of numeric field
Date
Msg-id 1297802915.1703.13.camel@tony1.localdomain
Whole thread Raw
Responses Re: Determine length of numeric field
Re: Determine length of numeric field
Re: Determine length of numeric field
List pgsql-sql
I'm altering datatypes in several tables from numeric to integer.  In
doing so, I get the following error:

dw=# \d uniq_hits   Table "support.uniq_hits"  Column   |  Type   | Modifiers 
------------+---------+-----------sourceid   | numeric | hitdate    | date    | total      | numeric | hitdate_id |
integer| 
 
Indexes:   "uniq_hits_hitdateid_idx" btree (hitdate_id), tablespace
"support_idx"
Tablespace: "support"

esave_dw=# alter table uniq_hits alter sourceid type int;
ERROR:  integer out of range

Sourceid should not be more than 5 digits long.  I'm able to perform
this query on Oracle and would like something similar on postgres 8.4:

delete from uniq_hits where sourceid in (select sourceid from uniq_hits
where length(sourceid) > 5);

I haven't had much luck with the length or char_length functions on
postgres.

Thanks.
Tony



pgsql-sql by date:

Previous
From: Achilleas Mantzios
Date:
Subject: Re: SQL gotcha
Next
From: Pavel Stehule
Date:
Subject: Re: Determine length of numeric field