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

Développement SQL Server Discussion :

[T-SQL] Conversion double en datetime


Sujet :

Développement SQL Server

  1. #1
    Membre actif
    Homme Profil pro
    DBA - Développeur BI
    Inscrit en
    Avril 2003
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : DBA - Développeur BI
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2003
    Messages : 442
    Points : 283
    Points
    283
    Par défaut [T-SQL] Conversion double en datetime
    Bonjour,

    JE souhaite convertir un double de cette forme 41105.2083333333 qui représente une date dans un fichier xml en datetime SQL sous SQL Server 2008.

    Lorsque je joue cette instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    DECLARE @d DATETIME
    SET @d = CONVERT(DATETIME, 41105.2083333333, 13)
    select @d
    Je me retrouve avec le résultat suivant :
    2012-07-15 06:00:00.000
    Alors que la date réelle devrait être :
    2012-07-13 07:00:00.000
    J'ai donc systématiquement deux jours d'avance sur la date réelle ?
    Auriez-vous une idée ?

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Étrange :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    select getdate() as dt_date
         , cast(getdate() as float) as dt_num;
     
    dt_date                 dt_num
    ----------------------- ----------------------
    2012-07-16 15:18:46.150 41104.6380341435
    41105 sera le 17 juillet 2012.
    D'ailleurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DECLARE @d DATETIME
    SET @d = CONVERT(DATETIME, 41105.2083333333, 13)
    SELECT @d
     
    -----------------------
    2012-07-17 04:59:59.997
    Un problème de timezone ?

Discussions similaires

  1. [SQL] Conversion du format d'un champ datetime
    Par jbtz64 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/02/2008, 09h17
  2. Conversion d'un DateTime au format SQL
    Par jerome.fortias dans le forum C#
    Réponses: 27
    Dernier message: 07/09/2007, 15h10
  3. [T-SQL] Conversion varChar en timeStamp
    Par Thig dans le forum Adaptive Server Enterprise
    Réponses: 6
    Dernier message: 27/10/2005, 12h11
  4. Réponses: 3
    Dernier message: 12/05/2005, 12h10
  5. Transact Sql : Conversion de variable
    Par lord_paco dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/08/2003, 13h25

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