SELECT Users,
       (SELECT COUNT(B.TaskID) FROM Users Where A.Users=B.Users FROM Log AS B AND B.Status = Standar),
       (SELECT COUNT(C.TaskID) FROM Users Where A.Users=C.Users FROM Log AS C AND C.Status = Execute),
       (SELECT COUNT(D.TaskID) FROM Users Where A.Users=D.Users FROM Log AS D AND C.Status = Incomplete)
FROM Log AS A
是这样吗?

解决方案 »

  1.   

    select 用户名,sum(case when  Status= 'Standar' then 1 end ) 已经完成,
    sum(case when  Status= 'Execute' then 1 end ) 正在完成,
    sum(case when  Status= 'Incomplete' then 1 end ) 还没有做
    group by 用户名
      

  2.   

    select users,count(TaskID) from table1 group by users,status
      

  3.   


    select [users],
           [status],
           count(*) as 工作量
    from [log]
    group by [users],[status]
      

  4.   


    select [users]
    ,已经完成=sum(case status when 'Standar' then 1 else 0 end)
    ,正在完成=sum(case status when 'Execute' then 1 else 0 end)
    ,还没有做=sum(case status when 'Incomplete' then 1 else 0 end)
    from [log]
    group by [users]
      

  5.   

    谢谢各位高手了,可惜不认识你们,要不然一定请大家吃一顿。呵呵。不知道大家有没有兴趣交个朋友。呵呵,可能以后还会有不明白的地方要向各位请教。我的QQ号是18776028。MSN是:[email protected].
      

  6.   

    select 用户名,sum(case when  Status= 'Standar' then 1 end ) 已经完成,
    sum(case when  Status= 'Execute' then 1 end ) 正在完成,
    sum(case when  Status= 'Incomplete' then 1 end ) 还没有做
    group by 用户名
      

  7.   

    如果这样写能达到这个效果吗,请问各位朋友为什么?
    select status,count(taskID) FROM log group by status.
      

  8.   

    我认为这个语句应该是按status来进行分组的统计出taskid的数量