Sql server Sql server存储过程帮助执行以下查询

Sql server Sql server存储过程帮助执行以下查询,sql-server,stored-procedures,Sql Server,Stored Procedures,我想要一个不使用游标的过程,以便我的输出如下:(如果可能,我希望查询使用with运算符) 看看这个 您的查询不需要使用WITH Name:Arjun(24.5 Hrs spent) jobname Time Date Comments java work 4.5 9/26/2012 12:00:00 AM Sample test comments 1 sql work 10

我想要一个不使用游标的过程,以便我的输出如下:(如果可能,我希望查询使用with运算符)

看看这个

您的查询不需要使用WITH

Name:Arjun(24.5 Hrs spent)

jobname          Time            Date                Comments  
java work     4.5     9/26/2012  12:00:00 AM   Sample test comments 1   
sql work      10      9/28/2012  12:00:00 AM   Sample test comments 2  
.net work     7.5     8/13/2012  12:00:00 AM   Sample test comments 3  
php  work     2.5     9/5/2012  12:00:00 AM    Sample test comments 4

Name:Ravi(9 Hrs spent)

jobname       time           Date             Comments  
java work     5.5     9/14/2012  12:00:00 AM   Sample test comments 1  
.net work     3.5     8/24/2012  12:00:00 AM   Sample test comments 2  
您不应该真的需要分组集,我只提供了它来向您展示如何在查询工具中使用摘要标题查看它。如果要将此数据传送到Visual Studio之类的前端工具,则应控制那里的分组,并以排序方式返回数据,例如

select name,case when jobname is null
                 then cast(sum(time) as varchar(12)) + ' hrs spent'
                 else jobname end jobname,time,date,comments
from testjob
group by grouping sets ((name),(name,jobname,time,date,comments))
order by name,comments
仅供参考,您确实应该选择更好的排序顺序,例如“日期”而不是“注释”,但这是我发现的唯一一个与您显示的结果完全一致的排序顺序。

请查看此

您的查询不需要使用WITH

Name:Arjun(24.5 Hrs spent)

jobname          Time            Date                Comments  
java work     4.5     9/26/2012  12:00:00 AM   Sample test comments 1   
sql work      10      9/28/2012  12:00:00 AM   Sample test comments 2  
.net work     7.5     8/13/2012  12:00:00 AM   Sample test comments 3  
php  work     2.5     9/5/2012  12:00:00 AM    Sample test comments 4

Name:Ravi(9 Hrs spent)

jobname       time           Date             Comments  
java work     5.5     9/14/2012  12:00:00 AM   Sample test comments 1  
.net work     3.5     8/24/2012  12:00:00 AM   Sample test comments 2  
您不应该真的需要分组集,我只提供了它来向您展示如何在查询工具中使用摘要标题查看它。如果要将此数据传送到Visual Studio之类的前端工具,则应控制那里的分组,并以排序方式返回数据,例如

select name,case when jobname is null
                 then cast(sum(time) as varchar(12)) + ' hrs spent'
                 else jobname end jobname,time,date,comments
from testjob
group by grouping sets ((name),(name,jobname,time,date,comments))
order by name,comments

仅供参考,您确实应该选择更好的排序顺序,例如“日期”而不是“注释”,但这是我发现的唯一一个与您显示的结果完全一致的排序顺序。

我尝试使用游标,但我希望它不使用游标。。实际上,我的要求是再次将其进一步转换为HTMLW为什么痴迷于在sql server中完成这一切?我尝试使用游标,但我不希望使用游标。。实际上,我的要求是再次将其进一步转换为HTMLW,为什么偏执于在sql server中完成这一切?