Thread: Oracle decode Function in Postgres

Oracle decode Function in Postgres

From
"Amin Schoeib"
Date:

Hi,
Like I see there is no equivalent to the Oracle decode Function
In Postgres.Is there maybe somebody who wrote decode as a
Function?

Schoeib

4Tek Gesellschaft für angewandte Informationstechnologien mbH
Schoeib Amin
Tel.  +49 (0) 69 697688-132
Fax. +49 (0) 69 697688-111
http://www.4tek.de

Re: Oracle decode Function in Postgres

From
Csaba Nagy
Date:
Of course there is an equivalent: the case construct.
There is some nice documentation about the available functions and
operators at:
http://www.postgresql.org/docs/view.php?version=7.3&idoc=0&file=functions.html
and specifically for CASE:
http://www.postgresql.org/docs/view.php?version=7.3&idoc=0&file=functions-conditional.html#AEN9698
You might also find useful to know that the NVL oracle function's
parallel in postgres is COALESCE.

HTH,
Csaba.

On Wed, 2003-09-03 at 11:00, Amin Schoeib wrote:
> Hi,
> Like I see there is no equivalent to the Oracle decode Function
> In Postgres.Is there maybe somebody who wrote decode as a
> Function?
>
> Schoeib
>
> 4Tek Gesellschaft für angewandte Informationstechnologien mbH
> Schoeib Amin
> Tel.  +49 (0) 69 697688-132
> Fax. +49 (0) 69 697688-111
> http://www.4tek.de
>



Re: Oracle decode Function in Postgres

From
"Amin Schoeib"
Date:
I read about that but, is there maybe somebody who wrote
A decode function so that you can export Oracle code with decode
Easily to Postgres.
I ask for that cause I am a beginner in PGPLSQL.

Thanxx

Schoeib

-----Ursprüngliche Nachricht-----
Von: Csaba Nagy [mailto:nagy@ecircle-ag.com]
Gesendet: Mittwoch, 3. September 2003 11:37
An: Amin Schoeib
Cc: Postgres general mailing list
Betreff: Re: [GENERAL] Oracle decode Function in Postgres


Of course there is an equivalent: the case construct.
There is some nice documentation about the available functions and operators at:
http://www.postgresql.org/docs/view.php?version=7.3&idoc=0&file=functions.html
and specifically for CASE:
http://www.postgresql.org/docs/view.php?version=7.3&idoc=0&file=functions-conditional.html#AEN9698
You might also find useful to know that the NVL oracle function's parallel in postgres is COALESCE.

HTH,
Csaba.

On Wed, 2003-09-03 at 11:00, Amin Schoeib wrote:
> Hi,
> Like I see there is no equivalent to the Oracle decode Function
> In Postgres.Is there maybe somebody who wrote decode as a
> Function?
>
> Schoeib
>
> 4Tek Gesellschaft für angewandte Informationstechnologien mbH Schoeib
> Amin Tel.  +49 (0) 69 697688-132
> Fax. +49 (0) 69 697688-111
> http://www.4tek.de
>



Re: Oracle decode Function in Postgres

From
Csaba Nagy
Date:
Somebody asked recently on this list the exact same style of question
about NVL, receiving the exact same style of answer, having the same
objection :)
Search in the archive (in the lat month or so) for "nvl" in the subject
to see some answers.

Cheers,
Csaba.


On Wed, 2003-09-03 at 12:25, Amin Schoeib wrote:
> I read about that but, is there maybe somebody who wrote
> A decode function so that you can export Oracle code with decode
> Easily to Postgres.
> I ask for that cause I am a beginner in PGPLSQL.
>
> Thanxx
>
> Schoeib
>
> -----Ursprüngliche Nachricht-----
> Von: Csaba Nagy [mailto:nagy@ecircle-ag.com]
> Gesendet: Mittwoch, 3. September 2003 11:37
> An: Amin Schoeib
> Cc: Postgres general mailing list
> Betreff: Re: [GENERAL] Oracle decode Function in Postgres
>
>
> Of course there is an equivalent: the case construct.
> There is some nice documentation about the available functions and operators at:
http://www.postgresql.org/docs/view.php?version=7.3&idoc=0&file=functions.html
> and specifically for CASE:
http://www.postgresql.org/docs/view.php?version=7.3&idoc=0&file=functions-conditional.html#AEN9698
> You might also find useful to know that the NVL oracle function's parallel in postgres is COALESCE.
>
> HTH,
> Csaba.
>
> On Wed, 2003-09-03 at 11:00, Amin Schoeib wrote:
> > Hi,
> > Like I see there is no equivalent to the Oracle decode Function
> > In Postgres.Is there maybe somebody who wrote decode as a
> > Function?
> >
> > Schoeib
> >
> > 4Tek Gesellschaft für angewandte Informationstechnologien mbH Schoeib
> > Amin Tel.  +49 (0) 69 697688-132
> > Fax. +49 (0) 69 697688-111
> > http://www.4tek.de
> >
>
>



Re: Oracle decode Function in Postgres

From
Jeff Eckermann
Date:
--- Amin Schoeib <aschoeib@4tek.de> wrote:
> Hi,
> Like I see there is no equivalent to the Oracle
> decode Function
> In Postgres.Is there maybe somebody who wrote decode
> as a
> Function?

The problem for any such body is that there is no one
function possible in PostgreSQL that will cover all of
the possible use cases of "decode" in Oracle.  As I
understand things, "decode" takes a variable number of
arguments, for a variety of datatypes.  In PostgreSQL
you would need to create a separate "decode" function
for every distinct set of arguments (number and
datatypes) that you are likely to encounter.  That
would be a lot of work for a generalized case.

You may be best served by searching your code for
usage of "decode", and writing only those versions
that you need.  The coding for each one would be
trivial, using "case" constructions.

>
> Schoeib
>
> 4Tek Gesellschaft f�r angewandte
> Informationstechnologien mbH
> Schoeib Amin
> Tel.  +49 (0) 69 697688-132
> Fax. +49 (0) 69 697688-111
> http://www.4tek.de
>
>


__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

Re: Oracle decode Function in Postgres

From
Terry Yapt
Date:
>I read about that but, is there maybe somebody who wrote
>A decode function so that you can export Oracle code with decode
>Easily to Postgres.
>I ask for that cause I am a beginner in PGPLSQL.

Perhaps you want to accommodate your Oracle code to the new Oracle 9i
features.  And that features supports CASE statement too:

http://www.oracle-base.com/Articles/9i/Case9i.asp