From: | Richard Huxton <dev(at)archonet(dot)com> |
---|---|
To: | Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: coalesce with all nulls can only be assigned to |
Date: | 2006-11-29 19:09:46 |
Message-ID: | 456DDAFA.3000803@archonet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Kevin Grittner wrote:
> Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> We never do assume that a text literal is a valid date. I won't bore
> you with all the details unless you ask for them, but we're running on
> Java and generating literals based on the object type passed to a low
> level method. A null has no type to use as the basis of a cast.
Unfortunate. Does your method know what type the database column is?
>> If you cast at least one of the nulls to DATE, you'll get what you
> want.
>
> I realize that, and I'm working on modifying our framework to get type
> information down to where we can do that for nulls. The problem is,
> this is a big enough change to potentially cause problems and hold up
> the migration to PostgreSQL on the majority of our databases for an
> application release cycle (three months), so I'm hoping for a less
> drastic workaround. It seems odd that a bare null works, but a coalesce
> of two nulls fails.
It's the coalesce that has the problem, not the insert. The coalesce is
deciding that it's working on text, and so returns text.
> It also seems odd that the automatic casting from
> text to date fails to cover this. (I tried creating a cast to cover
> this and it told me there already was one.)
There is a cast from text to date, but I don't think it's automatic...
(checks pg_cast) - no, it's marked as explicit. You could try marking
the cast as implicit, but I'd be concerned about unexpected casts occurring.
Another option I can think of: Spot the case where all values in the
coalesce are null and just replace with a single literal null.
--
Richard Huxton
Archonet Ltd
From | Date | Subject | |
---|---|---|---|
Next Message | Steve Poe | 2006-11-29 19:21:18 | Re: Postgresql data integrity during RAID10 drive rebuild |
Previous Message | Tony Caduto | 2006-11-29 19:00:03 | Re: Development of cross-platform GUI for Open Source DBs |