现在有4张表,其记录如下: 表1:学生表 学生编号 测验方式区分 测验学科编号 测验区分 合格判定区分
------------------------------------------------------------------------------------------
00001 1 1 1 0
00002 1 1 0 0
00003 2 1 1 1
00004 2 2 1 1
00005 2 2 0 0
00006 3 3 1 1
00007 3 3 1 0
00008 1 4 1 1
00009 3 5 0 0
00010 3 4 1 1
------------------------------------------------------------------------------------------
字段说明:
学生编号(PK)
测验方式区分(外键,与测验方式表关联)
测验学科编号(外键,与学科表关联)
测验区分(0值表示缺席测验,1表示参加了测验)
合格判定区分(0值表示测验不合格,1表示测验合格) 表2:测验方式表 测验方式区分 测验方式
----------------------------------------------------------------------------
1 一般
2 年中考
3 年终考
4 升学考
----------------------------------------------------------------------------字段说明:
测验方式区分(PK)
表3:学科表 学科编号 学科名称 隶属学部
----------------------------------------------------------------------------
1 会计 1
2 英语 2
3 几何 3
4 物理 3
5 日语 2
6 法语 2
7 音乐 5
8 德育 5
----------------------------------------------------------------------------字段说明:
学科编号(PK)
隶属学部(外键,与学部表关联,表示该门学科所隶属的学部) 表4:学部表 学部编号 学部名称
----------------------------------------------------------------------------
1 经济部
2 外语部
3 数理部
4 外贸部
5 文艺部
----------------------------------------------------------------------------字段说明:
学部编号(PK)以上面表中的记录为准,统计学生表中在不同的测验方式下,不同的学部下的学生测验状况,要求查出如下形式:
说明:下面的学生数是指应该参加某门学科测验的学生数
实测数(实际参加测试的人数)=学生数-缺席测验人数
倍率=实际参加测试的人数/合格者人数测验方式 学部 学科 学生数 实测数 合格者数 倍率
-----------------------------------------------------------------------------------------
会计 2 1 0 1/0
经济部-------------------------------------------------------------------------
小计 2 1 0 1/0
---------------------------------------------------------------------------------
物理 1 1 1 1/1
一般 数理部-------------------------------------------------------------------------
小计 1 1 1 1/1
---------------------------------------------------------------------------------
合计 3 2 1 2/1
-----------------------------------------------------------------------------------------
会计 1 1 1 1/1
经济部-------------------------------------------------------------------------
小计 1 1 1 1/1
年中考 ----------------------------------------------------------------------------------
英语 2 1 1 1/1
外语部 ------------------------------------------------------------------------
小计 2 1 1 1/1
---------------------------------------------------------------------------------
合计 3 2 2 2/2
-----------------------------------------------------------------------------------------
几何 2 2 1 2/1
----------------------------------------------------------------------
数理部 物理 1 1 1 1/1
----------------------------------------------------------------------
小计 3 3 2 3/2
年终考 ---------------------------------------------------------------------------------
日语 1 0 0 0/0
外语部 ------------------------------------------------------------------------
小计 1 0 0 0/0
---------------------------------------------------------------------------------
合计 4 3 2 3/2
-----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
00001 1 1 1 0
00002 1 1 0 0
00003 2 1 1 1
00004 2 2 1 1
00005 2 2 0 0
00006 3 3 1 1
00007 3 3 1 0
00008 1 4 1 1
00009 3 5 0 0
00010 3 4 1 1
------------------------------------------------------------------------------------------
字段说明:
学生编号(PK)
测验方式区分(外键,与测验方式表关联)
测验学科编号(外键,与学科表关联)
测验区分(0值表示缺席测验,1表示参加了测验)
合格判定区分(0值表示测验不合格,1表示测验合格) 表2:测验方式表 测验方式区分 测验方式
----------------------------------------------------------------------------
1 一般
2 年中考
3 年终考
4 升学考
----------------------------------------------------------------------------字段说明:
测验方式区分(PK)
表3:学科表 学科编号 学科名称 隶属学部
----------------------------------------------------------------------------
1 会计 1
2 英语 2
3 几何 3
4 物理 3
5 日语 2
6 法语 2
7 音乐 5
8 德育 5
----------------------------------------------------------------------------字段说明:
学科编号(PK)
隶属学部(外键,与学部表关联,表示该门学科所隶属的学部) 表4:学部表 学部编号 学部名称
----------------------------------------------------------------------------
1 经济部
2 外语部
3 数理部
4 外贸部
5 文艺部
----------------------------------------------------------------------------字段说明:
学部编号(PK)以上面表中的记录为准,统计学生表中在不同的测验方式下,不同的学部下的学生测验状况,要求查出如下形式:
说明:下面的学生数是指应该参加某门学科测验的学生数
实测数(实际参加测试的人数)=学生数-缺席测验人数
倍率=实际参加测试的人数/合格者人数测验方式 学部 学科 学生数 实测数 合格者数 倍率
-----------------------------------------------------------------------------------------
会计 2 1 0 1/0
经济部-------------------------------------------------------------------------
小计 2 1 0 1/0
---------------------------------------------------------------------------------
物理 1 1 1 1/1
一般 数理部-------------------------------------------------------------------------
小计 1 1 1 1/1
---------------------------------------------------------------------------------
合计 3 2 1 2/1
-----------------------------------------------------------------------------------------
会计 1 1 1 1/1
经济部-------------------------------------------------------------------------
小计 1 1 1 1/1
年中考 ----------------------------------------------------------------------------------
英语 2 1 1 1/1
外语部 ------------------------------------------------------------------------
小计 2 1 1 1/1
---------------------------------------------------------------------------------
合计 3 2 2 2/2
-----------------------------------------------------------------------------------------
几何 2 2 1 2/1
----------------------------------------------------------------------
数理部 物理 1 1 1 1/1
----------------------------------------------------------------------
小计 3 3 2 3/2
年终考 ---------------------------------------------------------------------------------
日语 1 0 0 0/0
外语部 ------------------------------------------------------------------------
小计 1 0 0 0/0
---------------------------------------------------------------------------------
合计 4 3 2 3/2
-----------------------------------------------------------------------------------------
解决方案 »
- sql语句,求优化,有表有数据,谢谢大侠!
- linux下oracle插入中文问题
- 数据库表消失了
- 如何创建自动增长的ID编号?
- oracle怎样备份表而不备份表里的数据?
- Oracle9i触发器的简单问题——涉及new,old
- 高分请教:如何远程更改oracle数据库服务器模式
- 郁闷!!!以前的foxpro的数据库,怎样才能导入oracle啊???怎么实现啊?
- Oracle实例名自己会改变,请教原因
- 求出数据库中col1与col2不全相同的记录
- 怪事!!!ue里正常显示的阿拉伯文字,拷贝到pl/sql developer的sql window就变成 ??? 了 !!!哪位给指点一下哈~~~~~~~~~~~~~~~ 感
- 有没有兄弟有Oracle 阴历转阳历的函数
字段说明:
学生编号(PK)
测验方式区分(外键,与测验方式表关联)
测验学科编号(外键,与学科表关联)
测验区分(0值表示缺席测验,1表示参加了测验)
合格判定区分(0值表示测验不合格,1表示测验合格)表2:测验方式表(t2)
测验方式区分(PK)
测验方式表3:学科表(t3)
学科编号(PK)
学科名称
隶属学部(外键,与学部表关联,表示该门学科所隶属的学部)表4:学部表(t4)
学部编号
学部名称select t2.测验方式,
t4.学部名称,
t3.学科名称,
count(t1.学生编号) 学生数,
sum(case when t1.测验区分 then 1 else 0 end) 实测数,
sum(case when t1.合格判定区分 then 1 else 0 end) 合格者数,
sum(case when t1.测验区分 then 1 else 0 end) /
sum(case when t1.合格判定区分 then 1 else 0 end) 倍率
from t1
join t2 on t1.测验方式区分 = t2.测验方式区分
join t3 on t1.学科编号 = t3.学科编号
join t4 on t3.隶属学部 = t4.学部编号
group by t2.测验方式, t4.学部名称, t3.学科名称