PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

Opérations sur les heures

Technique - général | Opérations sur les heures

Par ju782 le 11/04/2005 - 12:47

Bonjour,
le résultat d'une requête est une valeur de type time (15:15:00), le resultat d'une autre requête de même type (02:15:00), je voudrais simplement additioner les 2.
j'ai essayé un truc bete dans le terminal : select (time '15:00:00' + interval '02:00') ca me renvoie bien comme resultat :

projet=# select (time '15:00:00' + interval '02:00');
?column?
----------
17:00:00
(1 row)

mais quand je fais

SELECT (time REQUETE1 + interval REQUETE2), ca me renvoie une erreur.

Merci de votre aide

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Caster avec "::interval" du côté droit

Jean-Paul Argudo/ = 11 Avril, 2005 - 21:18

Bonjour,

Vraisemblablement, vous essayer d'additionner des heures, cela ne peut pas marcher. Il faut d'un côté une heure et de l'autre un intervalle. Soit time+time ne marche pas, donc, essayer time + time::interval...

Voici un bref exemple:

tests=# \d test
Table "public.test"
Column | Type | Modifiers
--------+------------------------+-----------
a | time without time zone |

tests=# select * from test;
a
----------
15:00:00
02:15:00
(2 rows)

tests=# select (a + a::interval) from test;
?column?
----------
06:00:00
04:30:00
(2 rows)

Si cela ne solutionne pas votre problème, merci de poster à nouveau dans ce forum un exemple un peu plus clair :-/

--

Jean-Paul ARGUDO

www.PostgreSQLFr.org


Merci beaucoup, j'avais vu da

ju782/ = 12 Avril, 2005 - 11:41

Merci beaucoup, j'avais vu dans la doc en ligne que les "time + time" ne marchait pas, je ne connaissais pas cette syntaxe, j'Ă©crivais comme ceci

tests=# select (time a + interval a) from test;
et cela me renvoyait une erreur de syntaxe.

Merci encore


© PostgreSQLFr, tous droits rĂ©servĂ©s.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.