首页 新闻 会员 周边

请大神写一个有关ORACLE数据库分组查询的sql语句 ,详情如下,感激不尽

0
悬赏园豆:5 [已解决问题] 解决于 2019-09-21 15:14

1.考场表(包含考场名)
2.考生信息表(主要包含流水号,考场名)
3.考试表(包含考生流水号,每次考试生成一条记录)

求助:以考场为分组,查询某日所有考场的考生人数和次数。
如:在2012年12月20日的数据应显示

考场1 5人 9次
考场2 0人 0次
考场3 3人 3次

如果考场为0人,0次考试无论如何也显示不出来 ,求大神帮忙。

爱钻牛角尖的程序猿的主页 爱钻牛角尖的程序猿 | 初学一级 | 园豆:4
提问于:2019-09-21 10:55
< >
分享
最佳答案
0

查询数据不对等的,用子查询吧分别得到结果

selec t2.考场名,
(select count(1) from 考生信息表 t1 where t.考场名=t1.考场名) 考生人数,
(select count(1) from 考生信息表 t1,考试表 t2 where t1.考生流水号=t2.考生流水号 and  t.考场名=t1.考场名 and t2.日=某日) 次数
from 考场表 t
收获园豆:5
张朋举 | 小虾三级 |园豆:1915 | 2019-09-21 11:42

大神,考试表中不包含考场名

爱钻牛角尖的程序猿 | 园豆:4 (初学一级) | 2019-09-21 11:57

@爱钻牛角尖的程序猿: 没毛病呀,考生表有呀

张朋举 | 园豆:1915 (小虾三级) | 2019-09-21 11:58

感谢神助,自己又改了一下考试次数用sum(1),解决了问题。

爱钻牛角尖的程序猿 | 园豆:4 (初学一级) | 2019-09-21 15:15

@爱钻牛角尖的程序猿: sum(1)count(1)没毛病,并且会有null问题;加isnul
count(*)
https://www.cnblogs.com/sueris/p/6650301.html

张朋举 | 园豆:1915 (小虾三级) | 2019-09-21 15:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册