IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Firebird Discussion :

Arrondir une heure


Sujet :

SQL Firebird

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 291
    Points : 144
    Points
    144
    Par défaut Arrondir une heure
    Bonjour,

    Je cherche un moyen pour arrondir un champ timestamp dans ma base de telle maniere :

    01/01/12 14:30:01->01/01/12 14:30:00
    01/01/12 14:32:01->01/01/12 14:30:00
    01/01/12 14:35:40->01/01/12 14:30:00
    01/01/12 14:38:10->01/01/12 14:30:00

    Comment pourrais je faire ca en sql?

    Merci

  2. #2
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Si j'ai bien compris vous voulez tronquer les minutes (pas les dizaines de minute) et tronquer les secondes.

    Je dirais quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dateadd(-mod( extract( Minute from :MADATE), 10) minute to dateadd(-extract( MilliSecond from :MADATE) MilliSecond to :MADATE))
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Select dateadd(-mod( extract( Minute from cast('01/01/12 14:38:10' as timestamp)), 10) minute to dateadd(-extract( MilliSecond from cast('01/01/12 14:38:10' as timestamp)) MilliSecond to cast('01/01/12 14:38:10' as timestamp) ))
      from rdb$database
    Renvoie :
    01/01/2012 14:30:00

    On doit pouvoir faire la même chose en convertissant le timestamp en chaine qu'on tronquerait et complèterait par '0:00' avant de reconvertir en timestamp.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 291
    Points : 144
    Points
    144
    Par défaut
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. arrondir une heure
    Par pkrvz dans le forum VBA Access
    Réponses: 2
    Dernier message: 16/05/2008, 21h31
  2. Comment convertir une heure (TDateTime) locale en UTC/GMT
    Par rconty dans le forum C++Builder
    Réponses: 2
    Dernier message: 16/05/2005, 10h49
  3. insérer une heure dans une BD
    Par requiemforadream dans le forum ASP
    Réponses: 3
    Dernier message: 26/04/2005, 12h10
  4. [Date][SQL date][Format] insertion d'une heure
    Par goulime dans le forum JDBC
    Réponses: 11
    Dernier message: 26/01/2004, 11h38
  5. [VBA-E] [Excel] Lancer une macro à une heure donnée
    Par Lysis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2002, 12h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo