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 :

[Sql 2008] Pb d'addition


Sujet :

Développement SQL Server

  1. #1
    Membre confirmé Avatar de libremax
    Profil pro
    Chargé de projets
    Inscrit en
    Mars 2007
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de projets

    Informations forums :
    Inscription : Mars 2007
    Messages : 168
    Par défaut [Sql 2008] Pb d'addition
    Bonjour,
    Dans une procédure j'ai une requette qui calcul un temps d'arret[Temps].

    Mon problème est que je n'arrive pas a creer un champ dans lequel les valeurs [temps] s'additionnent.

    A la limite, je n'ai besoin que du résultat final qui pourrait etre recopier sur chaque ligne.

    voici le code de ma Ps:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT     Tbl_Taches.Compte_Machine, Tbl_Affectation_machine.Machine, Tbl_Taches.Tache, Tbl_Taches.Type_Intervention, Tbl_Taches.Code_Planif, CONVERT(varchar,Tbl_Taches.Fin_T - Tbl_Taches.Debut_T, 108) AS Debut_T, Tbl_Intervention.Generer_Arret AS arret, CONVERT(varchar,Tbl_Intervention.Date_Fin_Arret - Tbl_Intervention.Date_Debut_Arret, 108) AS temps, View_piece_utilise_par_tache.Prix_piece_utilise AS prix_piece,CONVERT(varchar, Tbl_Taches.Debut_T, 103) AS Date_Intervention
    FROM         Tbl_Taches INNER JOIN
                          Tbl_Affectation_machine ON Tbl_Taches.Compte_Machine = Tbl_Affectation_machine.Compte_Machine INNER JOIN
                          Tbl_Selection_Type_5 ON Tbl_Taches.Debut_T >= Tbl_Selection_Type_5.du AND Tbl_Taches.Fin_T <= Tbl_Selection_Type_5.au INNER JOIN
                          Tbl_Intervention ON Tbl_Taches.Id = Tbl_Intervention.Numero_Tache LEFT OUTER JOIN
                          View_piece_utilise_par_tache ON Tbl_Intervention.Numero_Tache = View_piece_utilise_par_tache.Numero_tache
    WHERE     (Tbl_Affectation_machine.Compte_Machine = @Compte_Niveau1) AND (Tbl_Taches.Realiser = 1)
    ORDER BY Debut_T DESC
    Quelqu'un aurait une idée ?

    Merci d'avance

  2. #2
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    Tu devrais utiliser la fonction DATEDIFF afin de calculer la différence entre les 2 dates. Voici la documentation : http://msdn.microsoft.com/fr-fr/libr...ql.100%29.aspx

  3. #3
    Membre confirmé Avatar de libremax
    Profil pro
    Chargé de projets
    Inscrit en
    Mars 2007
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de projets

    Informations forums :
    Inscription : Mars 2007
    Messages : 168
    Par défaut RE
    Bonjour,

    D'abord merci de vous intéresser a mon problème.
    Datediff calcul la différence entre 2 dates moi ceci n'est pas mon problème.
    moi, ma Ps me renvoi des champs et des lignes.
    exemple :
    Compte_Machine Machine Tache ..... temps
    135 mach1 xxxx 02:00:00
    144 mach2 xxdx 05:15:00
    .....
    le temps est en HH:MM:SS.
    J'aimerai avoir :
    Compte_Machine Machine Tache ..... temps sum
    135 mach1 xxxx 02:00:00 02:00:00
    144 mach2 xxdx 05:15:00 07:15:00
    ou alors
    Compte_Machine Machine Tache ..... temps sum
    135 mach1 xxxx 02:00:00 07:15:00
    144 mach2 xxdx 05:15:00 07:15:00

    Auriez-vous une idée ?
    Cdt

  4. #4
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Par défaut
    ah pardon j'ai mal compris la demande :-( Si vous souhaitez additionner des temps vous pouvez utiliser la fonction DATEADD.
    Si votre problème est de connaitre la valeur de la ligne précédente afin de l'additionner, vous devriez regarder du coté des CTE ou des ROWNUMBER.

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

Discussions similaires

  1. Comment créer un déclencheur dans SQL 2008
    Par Coroebus dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 15/09/2008, 10h44
  2. SQL 2008 et utf-8
    Par Thomad dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 16/08/2008, 20h22
  3. [MS SQL 2008]Connaitre la date de fin d'évaluation
    Par jowsuket dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/06/2008, 15h55
  4. Utiliser l'éditeur graphique de fichier dbml avec sql 2008
    Par jowsuket dans le forum Visual Studio
    Réponses: 1
    Dernier message: 27/06/2008, 10h52

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