Re: Oracle vers postgresql : Conversion de code : questions

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Pierre BOIZOT <pierre(dot)boizot(at)gmail(dot)com>
Cc: PG-Mail-liste <pgsql-fr-generale(at)postgresql(dot)org>
Subject: Re: Oracle vers postgresql : Conversion de code : questions
Date: 2013-08-25 17:37:31
Message-ID: 1377452251.2443.20.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

On Sun, 2013-08-25 at 18:44 +0200, Pierre BOIZOT wrote:
> Bonjour,
>
> ora2pg m'a permis de migrer vers pg 100 % de mes tables 99% des indexes ....
> J'ai poursuivi l'analyse des erreurs lors de la création des vues .
>
> Le gros des erreurs provient des jointure externes , 130 à traiter ....
>
> voici deux exemples de code à convertir sur lequel je suis tombé.
>
> *1 Cacul d'une date date d'échéance.*
>
> DA_TRANSACTION est une date et J_ACCUSE_RECEPTION un integer ( nombre de
> jour).
>
> Sous oracle se calcul comme cela :
> P.DA_TRANSACTION + P.J_ACCUSE_RECEPTION
>
> je n'ai pas trouvé mieux que
>
> abstime( int4(abstime(HP.DA_TRANSACTION::timestamp))+ P.J_ACCUSE_RECEPTION
> *86400 )
>
> Je ne trouve pas cela trés élégant ;-(
>

Parce que ça ne l'est pas :)

Ceci est plus élégant à priori :

postgres=# select '2013-01-01'::date + 132 * interval '1 day';
?column?
---------------------
2013-05-13 00:00:00
(1 row)

Ça donnerait donc :

P.DA_TRANSACTION + P.J_ACCUSE_RECEPTION * interval '1 day'

> *2 expression dans une clause where :*
> Encore une histoire de date avec les mêmes colonnes ...
>
> Oracle
> (LOCALTIMESTAMP - (HP.DA_TRANSACTION) > P.J_ACCUSE_RECEPTION
>
> PostgreSQL
> ( int4(abstime(LOCALTIMESTAMP))) - (int4(abstime(HP.DA_TRANSACTION))) <
> P.J_ACCUSE_RECEPTION*86400
>
> Avez-vous autres solutions?
>

Même réponse :

LOCALTIMESTAMP > HP.DA_TRANSACTION + P.J_ACCUSE_RECEPTION * interval '1
day'

--
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com

In response to

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message damien clochard 2013-08-25 19:36:57 Re: [pgsql-fr-generale] Re: [pgsql-fr-generale] Error chargement de données.
Previous Message Pierre BOIZOT 2013-08-25 16:44:58 Oracle vers postgresql : Conversion de code : questions