欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

求一条复杂sql写法,该如何处理

更新时间: 2014-01-05 02:10:14 责任编辑: Author_N1

 

求一条复杂SQL写法


id      file1    file2    file3
1       A公司    A项目   开发
2       A公司    A项目   开发
3       A公司    B项目   开发
4       A公司    B项目   开发
5       A公司    B项目   实施
6       B公司    B项目   实施
7       B公司    C项目   测试
8       B公司    C项目   测试
9       B公司    C项目   开发
10      C公司    C项目   开发
11      C公司    C项目   测试
12      C公司    D项目   开发
13      C公司    F项目   开发
14      C公司    F项目   测试
15      C公司    F项目   实施

现在需要根据根据file1,file2,file3一样的统计人事
以A公司为例子,A公司 A项目 开发 的有两个人,
               A公司 B项目 开发 的有两个人,
               A公司 B项目 实施 的有一个人,     

id      file1   file2    file3  count
1       A公司   A项目   开发   2
2       A公司   A项目   开发   2
3       A公司   B项目   开发   2
4       A公司   B项目   开发   2
5       A公司   B项目   实施   1

类似这样的
我还需要根据file1和file2来得到总人数
以A公司为例子,A公司 A项目 的有两个人(就两个开发),
               A公司 B项目 的有三个人(包括2个开发一个实施),     

id      file1   file2    file3  count  sum
1       A公司   A项目   开发   2      2
2       A公司   A项目   开发   2      2
3       A公司   B项目   开发   2      3
4       A公司   B项目   开发   2      3
5       A公司   B项目   实施   1      3


--参考方法--
select file1,file2,file3,count(*) from testforrc group by rollup(file1,file2,file3)
--参考方法--
select file1,file2, file3,count(*) total from test01 group by file1,file2,file3 order by 1;
--参考方法--
select file1,file2, count(*) sum from test01 group by file1,file2 order by file1,file2;
--参考方法--
SELECT  rownum, tt.*, dd.summ
  FROM   (SELECT   t.*
            FROM   (  SELECT   file1,
                               file2,
                               file3,
                               COUNT ( * )
                        FROM   test1
                    GROUP BY   file1, file2, file3
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:10:14
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6464/
本文WWW.DOC100.NET DOC100.NET版权所有。