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 :

Somme d'heures SQL


Sujet :

MS SQL Server

  1. #1
    Membre du Club
    Homme Profil pro
    Je produit des statistiques pour le SDIS 47.
    Inscrit en
    Avril 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Je produit des statistiques pour le SDIS 47.
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2014
    Messages : 73
    Points : 53
    Points
    53
    Par défaut Somme d'heures SQL
    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
    28
    29
    30
    31
    32
     
    SELECT DISTINCT COUNT(I.ID_INTERVENTION_SDIS) AS Nbre_Inter,
            AE.NOM_PRENOM_AGENT AS Nom_Agent,
            AE.STATUT_POMPIER AS Statut,
            CONVERT(VARCHAR,SUM(DATEDIFF(MI,AE.DH_ALERTE,AE.DH_FIN)))/60 AS Nbre_Heure,
            C.LIB_CENTRE AS Centre,
            CASE WHEN (DATEPART(HOUR,AE.DH_ALERTE)) BETWEEN 7 AND 18 THEN 'Jour' ELSE 'Nuit' END AS Journee,
            CASE WHEN (T.FL_WEEKEND) = 1 THEN 'Week-end' ELSE '' END AS FL_WE,
            YEAR(AE.DH_ALERTE) AS Annee
     
     
    FROM OPS_INTERVENTION I
     
    INNER JOIN OPS_AGENT_ENGAGE AE
                  ON AE.ID_INTERVENTION = I.ID_INTERVENTION
    INNER JOIN OPS_CENTRE C 
                  ON C.ID_CENTRE = AE.ID_CENTRE
    INNER JOIN OPS_TEMPS T ON LEFT(T.DT,12) = LEFT(AE.DH_ALERTE,12)
     
    WHERE     
          CONVERT(VARCHAR,(AE.DH_FIN-AE.DH_ALERTE),108) BETWEEN '00:05:00' AND '22:00:00'
          AND T.FL_WEEKEND = 1
          AND YEAR(AE.DH_ALERTE) = 2014
     
     
     
    GROUP BY  AE.NOM_PRENOM_AGENT ,
              CASE WHEN (DATEPART(HOUR,AE.DH_ALERTE)) BETWEEN 7 AND 18 THEN 'Jour' ELSE 'Nuit' END,
              AE.STATUT_POMPIER ,
              C.LIB_CENTRE,
              CASE WHEN (T.FL_WEEKEND) = 1 THEN 'Week-end' ELSE '' END,
              YEAR(AE.DH_ALERTE)
    Le résultat de la requête est le suivant :


    Nbre_Inter Nom_Agent Statut Nbre_Heure Centre Journee FL_WE Annee
    1 Agent 1 V 0 VILLENEUVE SUR LOT Jour Week-end 2014
    3 Agent 2 V 2 LAYRAC Nuit Week-end 2014
    1 Agent 3 V 0 NERAC Nuit Week-end 2014
    5 Agent 4 V 4 SAINTE LIVRADE SUR LOT Nuit Week-end 2014
    17 Agent 5 V 27 NERAC Jour Week-end 2014

    Mon problème est le suivant, l'agent 1 a fait 1 Inter qui a durée entre 0 et 59 mn. Ce qui concrètement ne veux rien dire, je voudrai faire apparaitre mon Datediff au format
    HH:MM.

    Vous en remerciant par avance.

    Cordialement

    TAZ

  2. #2
    Membre éclairé Avatar de GeekMokona
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2011
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2011
    Messages : 327
    Points : 817
    Points
    817
    Par défaut
    Bon je pense que tu déjà une erreur d'écriture Divisé une chaine de Caractére ...

    Sinon remplace Ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
         CONVERT(VARCHAR,SUM(DATEDIFF(MI,AE.DH_ALERTE,AE.DH_FIN)))/60 AS Nbre_Heure,
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Cast(SUM(DATEDIFF(MI,AE.DH_ALERTE,AE.DH_FIN))/60,char(2))+':'+CAST(SUM(DATEDIFF(MI,AE.DH_ALERTE,AE.DH_FIN))%60,char(2))

  3. #3
    Membre du Club
    Homme Profil pro
    Je produit des statistiques pour le SDIS 47.
    Inscrit en
    Avril 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Je produit des statistiques pour le SDIS 47.
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2014
    Messages : 73
    Points : 53
    Points
    53
    Par défaut Somme d'heure SQL
    Message lors de l'exécution:

    Lookup Error - SQL Server Database Error: Syntaxe incorrecte vers 'Cast', 'AS' attendu.

  4. #4
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 422
    Points
    7 422
    Billets dans le blog
    1
    Par défaut
    Remplace les deux ",char(2)" par " as char(2)"

  5. #5
    Membre éclairé Avatar de GeekMokona
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2011
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2011
    Messages : 327
    Points : 817
    Points
    817
    Par défaut
    Citation Envoyé par StringBuilder Voir le message
    Remplace les deux ",char(2)" par " as char(2)"
    ouh la je fatigue

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

Discussions similaires

  1. somme d'heure en SQL
    Par rouxfab dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 07/05/2008, 16h57
  2. [CR9]somme d'heures et vb6
    Par ecranbleu27 dans le forum SDK
    Réponses: 2
    Dernier message: 30/05/2006, 16h58
  3. [VBA-E] somme d'heures supérieures à 24h
    Par bandit boy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/05/2006, 15h02
  4. colonne heure SQL SERVER
    Par flydragon dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 03/04/2006, 15h55
  5. [CR ?] Somme d'heure sous Crystal ?
    Par Peter PARKER dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 17/04/2003, 16h24

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