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

MS SQL Server Discussion :

Conversion minutes en jours heures minutes


Sujet :

MS SQL Server

  1. #1
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut Conversion minutes en jours heures minutes
    Bonjour,

    Je récupère une différence en minutes entre deux dates (
    SELECT datediff(mi, dateDab, dateFin)) ), qui peut être conséquente, et je voudrais la convertir dans tous les cas en heures/minutes/secondes.

    J'ai essayé avec modulo, mais si le n,ombre de minutes que j'ai est inférieur aux modulos, ça ne fonctionne evidemment pas.

    Comment faire?

  2. #2
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    Ecris une UDF pour gérer tous ces aspects.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    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
     
    create function fn_to_hhmmss
    (
    	@EnMinutes as int
    )
    Returns varchar(10)
    AS
    Begin
    	Declare @hh varchar(2),@mm varchar(2), @ss varchar(2)
    	--Les heures
    	set @hh=cast(@EnMinutes % 60 as varchar(2))
    	if len(@hh)=1
    		set @hh='0'+ @hh
    	set @EnMinutes=@EnMinutes/60
    	--Les minutes
    	set @mm=cast(@EnMinutes % 60 as varchar(2))
    	if len(@mm)=1
    		set @mm='0'+ @mm
    	--Les secondes
    	set @ss=cast(@EnMinutes % 60 as varchar(2))
    	if len(@ss)=1
    		set @ss='0'+ @ss
    	return @hh + ':' + @mm + ':' + @ss
    End
    go
    select dbo.fn_to_hhmmss(104)
    go
    Essaie d'amender, j'ai juste donner les grandes lignes.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  3. #3
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Merci beaucoup pour ce fragment de code. J'ai modifié pour obtenir ce qu'il me faut, ça marche nickel

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

Discussions similaires

  1. [XL-2010] Conversion secondes en Jours/Heures/Minutes/Secondes
    Par Chtulus dans le forum Excel
    Réponses: 2
    Dernier message: 11/01/2013, 14h40
  2. Conversion minutes vers Jour:Heure:minute
    Par jaq dans le forum VBA Access
    Réponses: 10
    Dernier message: 24/09/2009, 17h01
  3. Conversion de minute en jours, heures et minute
    Par RobertP dans le forum Langage
    Réponses: 1
    Dernier message: 09/10/2008, 15h57
  4. Réponses: 12
    Dernier message: 03/01/2007, 13h55
  5. Réponses: 1
    Dernier message: 01/06/2006, 23h12

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