Rechercher : dans
Par :

[oracle] comparaison d'heures

Dernière réponse le 16 mar 2007 à 15:46:28 Gilles M, le 2 déc 2005 à 15:59:24 
 Signaler ce message aux modérateurs

Bonjour,
Je travaille sous une base Oracle 8i. Je dispose d'un champs date du type 01/12/05 16:01:50. Il faut que je sélectionne tous les enregistrements dont la l'heure est comprise entre 8h00 et 8h30.
Si quelqu'un connait la solution ....
Merci d'avance
Gilles

Meilleures réponses pour « [oracle] comparaison d'heures » dans :
Connexion à une base Oracle en php Voir1. Périmètre Cet article est un exemple de connexion à une base Oracle par le biais d'un script php. Cet article ne traite pas la configuration de votre serveur Oracle, et de votre client Oracle. Nous partons du principe que vous pouvez accéder à...
Les comparateurs de prix VoirUtiliser des comparateurs de prix Fonctionnement du comparateur de prix Utiliser un comparateur sans être abusé Comparateurs spécialisés Comparateurs généralistes Comparateurs alternatifs Un
Oracle - Les requêtes hiérarchiques VoirCet article se base sur des tests et recherches réalisés dans la version 8.1.5 d'Oracle. Introduction Tout au long de cet article, nous allons nous intéresser à une structure de données permettant de créer un Forum de discussion, matérialisé par...
Oracle - Introduction au SGBD Oracle VoirIntroduction au SGBD Oracle Oracle est un SGBD (système de gestion de bases de données) édité par la société du même nom (Oracle Corporation - http://www.oracle.com), leader mondial des bases de données. La société Oracle Corporation a été créée en...
Oracle - Les séquences VoirCet article s'appuie sur la version 8.1.6 d'Oracle. Une séquence est un objet de base de données Oracle, au même titre qu'une table, une vue, etc... Autrement dit, il appartient à un utilisateur, on peut le manipuler, le modifier, à condition...

1

sebsauvage, le 2 déc 2005 à 16:25:39

select * from ...
where date between '2005-12-01 08:00' and '2005-12-01 08:30'


si je ne me trompe pas.

Répondre à sebsauvage

6

 Nozoum, le 16 mar 2007 à 15:46:28

Il y a pas besoin de convertir avec TO_NUMBER, la solution est très simple:

SELECT * FROM [TABLE]
WHERE TO_CHAR([CHAMP], 'HH24:MI') BETWEEN '08:00' AND '08:30'

Il gère tout seul le between sur du texte sans problème, @+

Répondre à Nozoum

2

bacchuss, le 2 déc 2005 à 16:33:48

Oui mais la c'est que pour une journée, non ?
ne faut-il pas utiliser TO_CHAR() et SUBSTR() si on veut extraire uniquement
les heures de tous les jours ?

ou mieux HOUR() et MINUTE() __________________________________________
01001001110101001010100101 et plus si affinités

Répondre à bacchuss

3

Gilles M, le 2 déc 2005 à 16:39:29

Effectivement, le problème se pose lorsque l'on travaille sur plusieurs dates.
J'avais essayer de travailler avec
to_char(date,'HH24:MI) between '08:00' and '08:30' mais cela ne fonctionne pas

Répondre à Gilles M

4

marina, le 9 fév 2006 à 13:54:24
  • +1

Salut Gilles,

Un peu tordu mais tu peux faire comme ça :

select to_char(sysdate, 'DD/MM/YYYY HH24:MI') from dual
where to_number(to_char(sysdate, 'HH24MI')) between 0800 and 0830;

Répondre à marina

5

Gilles M, le 9 fév 2006 à 14:03:48

Bonjour Marina,
Merci beaucoup pour cette réponse qui n'est pas tordue puisqu'elle fonctionne :-)
A charge de revanche.
Gilles

Répondre à Gilles M
Collection CommentÇaMarche.net