Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在SQL SERVER中计算无小时数_C#_Sql_Sql Server 2008_Sql Server 2008 R2_Sql Server 2012 Express - Fatal编程技术网

C# 如何在SQL SERVER中计算无小时数

C# 如何在SQL SERVER中计算无小时数,c#,sql,sql-server-2008,sql-server-2008-r2,sql-server-2012-express,C#,Sql,Sql Server 2008,Sql Server 2008 R2,Sql Server 2012 Express,我有一个表,其中包含一列NoofHours,数据类型为datetime,现在我想对9:30+9:45=19:15(HH:MM)格式的值求和,请帮助。这应该适用于您: Select sum(NoofHours) as sumO FROM YourTable Group By NoofHours SELECT convert(time,DATEADD(hh,SUM(DATEPART(hh,CONVERT(DATETIME,tm,108))), DATEADD(n,SUM(DATEPART(n,C

我有一个表,其中包含一列NoofHours,数据类型为datetime,现在我想对9:30+9:45=19:15(HH:MM)格式的值求和,请帮助。

这应该适用于您:

Select sum(NoofHours) as sumO
FROM YourTable
Group By NoofHours 
SELECT convert(time,DATEADD(hh,SUM(DATEPART(hh,CONVERT(DATETIME,tm,108))), DATEADD(n,SUM(DATEPART(n,CONVERT(DATETIME,tm,108))),'1900.01.01') )) FROM temp

我还创建了一个SQLFIDLE供您使用

进行测试,这并不容易,因为SQL Server没有表示时间跨度的数据类型。是否必须在数据库中执行此操作?C#确实可以访问自然支持加法的数据类型。您很少(如果有的话)希望对计算聚合的同一列进行分组。