2010-04-07 4 views
1

J'ai quelques dossiers comme celui-ci:somme des temps dans SQL

ID  Personel_Code  Time 
---  -------------  ------ 
1   0011    05:50 
3   0011    20:12 
4   0012    00:50 

Je veux avoir la somme des temps pour chaque personne. dans cet exemple je veux avoir le résultat comme ceci:

Personel_Code   Time 
-------------   ----- 
0011     26:02 
0012     00:50 

Merci.

+0

dépend vraiment de votre serveur DB ... Qui est-il? Et dépend de comment enregistrer les champs de temps, que les chaînes ou vous utilisez des types de données date/heure. –

+0

Aussi, qu'avez-vous essayé jusqu'à présent? – mdm

+0

J'utilise sql-server 2005. TIME est stocké sous forme de chaîne. je ne peux pas le lancer à temps? Malheureusement, je ne suis pas bon en écrivant une requête. – LIX

Répondre

1

Probablement que vous feriez quelque chose comme ça dans SQL Server (juste un soupçon, vous devez travailler sur les détails et les conversions)

SELECT Personel_Code, SUM(DATEDIFF(MINUTE, '0:00:00', convert(time, Time, 8))) as totalTime 
FROM thisTable 
GROUP BY Personel_Code