Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 08/02/2012 20:58:50
- drouault.p
- Membre
Type le résultat d'un calcul dans une clause select
Bonsoir
Je cherche à typer le résultat retourner par postgres lors d'une multiplication entre deux colonnes. J'ai simplifié la requête que j'utilise ci dessous :
select datepose + ((dureelamp / nbheurefoncannuel) * 365) from ma_table.
Ce qui ne va pas , c'est que si dureelamp a pour valeur 12000 heures et nbheurefoncannuel 4065, postgres me type le résultat en integer et non en numeric( du coup au lieu de 2.85, il me renvoit 2). Lorsque je ramène jour, la différence se fait plutot sentir.
J'ai chercher mais pas trouver une fonction qui me permettrait de dire à postgres de stocker le résultat de ce premier calcul dans un numeric et non dans un integer. Du style numeric (dureelamp / nbheurefoncannuel).
Est ce que l'un d'entre vous aurait ça en stock ?
Merci d'avance
Pierre
Hors ligne
#2 09/02/2012 00:15:28
- gleu
- Administrateur
Re : Type le résultat d'un calcul dans une clause select
Il suffit de transformer un seul de ces éléments en numeric pour que ça fonctionne à priori. Donc par exemple :
select datepose + ((dureelamp::numeric / nbheurefoncannuel) * 365) from ma_table
Guillaume.
Hors ligne
#3 12/02/2012 12:24:24
- drouault.p
- Membre
Re : Type le résultat d'un calcul dans une clause select
Exact ça fonctionne (tout bêtement j'ai envie de dire), merci beaucoup !
Pierre
Hors ligne