Re: typecasting numeric(18,4) to varchar/text - Mailing list pgsql-sql

From Martin Knipper
Subject Re: typecasting numeric(18,4) to varchar/text
Date
Msg-id 4097B205.2040402@mk-os.de
Whole thread Raw
In response to Re: typecasting numeric(18,4) to varchar/text  (Andrew Sullivan <ajs@crankycanuck.ca>)
List pgsql-sql
Am 04.05.2004 16:37 schrieb Andrew Sullivan:

> On Tue, May 04, 2004 at 09:35:31AM -0400, ashok@kalculate.com wrote:
> 
>>create table a (a numeric(18,4));
>>create table b (b varchar(25));
>>insert into a values(12000.43);
>>insert into b select (a.a)::varchar;
> 
> 
> Which version is that?  Here's my session:
> 
> andrewtest=# create table a (a numeric(18,4));
> CREATE TABLE
> andrewtest=# create table b (b varchar(25));
> CREATE TABLE
> andrewtest=# insert into a values(12000.43);
> INSERT 17168 1
> andrewtest=# insert into b select (a.a)::varchar;
> INSERT 17169 1
> 
> That's on 7.4.2.  You might want to try casting to text first.
> 

Yes, it also works for me with Version 7.4.2.
I found an older postgres DB with Version 7.2 and I get the same
error as ashok

demo=# select a::varchar from a;
ERROR:  Cannot cast type 'numeric' to 'character varying'

demo=# select a::text from a;
ERROR:  Cannot cast type 'numeric' to 'text'

demo=# select '\'' || a || '\'' from a;;
ERROR:  Unable to identify an operator '||' for types 'unknown'
and 'numeric'
You will have to retype this query using an explicit cast

Greetings,
Martin


-- 
Martin Knipper
www  : http://www.mk-os.de
Mail : knipper@mk-os.de

Random Signature:
-----------------
while( !asleep() ) sheep++;


pgsql-sql by date:

Previous
From: "scott.marlowe"
Date:
Subject: Re: invalid input syntax for integer: ""
Next
From: Martin Knipper
Date:
Subject: Re: Rank