Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/01/2012, 15h49   #1
 
Inscription : avril 2008
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 20
Points : -1
Points : -1
Par défaut Convertir float en datetime

Bonjour,

quelqu'un pourrait il m'aider sur la conversion d'un float en datetime ?

mes floats ont la forme suivante : 20120106

Cela me servirait pour utiliser la fonction DATEDIFF.

j'ai essayé les syntaxes suivantes mais j'ai toujours une erreur (Une erreur de dépassement arithmétique s'est produite lors de la conversion de expression en type de données datetime.) :
Code :
1
2
SELECT DATEDIFF(DAY,CAST(monfloat1 AS datetime),CAST(monfloat2 AS datetime)) AS duree_en_jour
  FROM ma_table
Merci beaucoup
naitregitan est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 06/01/2012, 16h53   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 791
Points : 17 791
Code :
CAST(CAST(20120106 AS CHAR(8)) AS DATETIME)
A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 15h53   #3
 
Inscription : avril 2008
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 20
Points : -1
Points : -1
Code :
1
2
 
DATEDIFF(DAY,CONVERT(datetime, CONVERT(char,dateEnfloat)),CONVERT(datetime, CONVERT(char,dateEnfloat2)
En effet, ça marche comme...un peu l'artillerie lourde je trouve.

merci
naitregitan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 17h12   #4
Membre Expert
 
Homme Etienne ZINZINDOHOUE
Ingénieur développement
Inscription : mars 2010
Messages : 1 139
Détails du profil
Informations personnelles :
Nom : Homme Etienne ZINZINDOHOUE
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur développement
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2010
Messages : 1 139
Points : 2 470
Points : 2 470
Envoyer un message via Yahoo à zinzineti
autre méthode

Code :
1
2
SELECT DATEDIFF(DAY,CAST('monfloat1' AS datetime),CAST('monfloat2' AS datetime)) AS duree_en_jour
FROM ma_table.
__________________
Etienne ZINZINDOHOUE
Billets-Articles
zinzineti est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h22.


 
 
 
 
Partenaires

Hébergement Web