以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  后台统计  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=121521)

--  作者:刘林
--  发布时间:2018/7/8 15:49:00
--  后台统计
请问老师,如何用sql语句直接提出后台成绩表中按总分排序前100名的不重复学校,并统计出该校有多少个人至临时表中,显示为学校,人数两列
--  作者:刘林
--  发布时间:2018/7/8 18:37:00
--  
t.Fill("se    lect top 10  DISTINCT 单位名称 from {成绩} where 考试名称=\'" & c2 & "\'and 学段=\'初中\' and 年级 =\'" & c3 & "\' order by 总分 desc", "XXXX", True)
我想提出前10名学生中不重复的单位名称,但加了distinct就提示单位名称列不存在(不加distinct就没提示错误),另外如果提出来后如何填充各单位符合条件的记录数
[此贴子已经被作者于2018/7/8 18:43:21编辑过]

--  作者:有点甜
--  发布时间:2018/7/9 9:10:00
--  

sql1:获取前10行数据,标记为表A;

 

sql2:查询表A,分组查询、统计,即可,如

 

select 单位名称, count(*) as 人数 from (sql1) as a group by 单位名称


--  作者:刘林
--  发布时间:2018/7/11 22:36:00
--  
t.fill("Sel  ect 单位名称,count(*) As 参考人数 from (Sel  ect 单位名称 from {成绩} where 考试名称= \'" & c2 & "\'and 学段=\'高中\' and 年级 =\'" & c3 & "\' and 分科=\'" & c4 & "\') As b group by 单位名称 ,count(*) As " & bt & " from (Se  lect Top " & t3 & " 单位名称 from {成绩} where 考试名称= \'" & c2 & "\'and 学段=\'高中\' and 年级 =\'" & c3 & "\' and 分科=\'" & c4 & "\' order by 总分 desc) As a group by 单位名称","XXX", True)

老师,我想用红色这个来增加个参考人数统计,这样不对呢,提示数据源问题,不要红色的是可以,依照你的提示想这样做,不知哪里错了

--  作者:有点甜
--  发布时间:2018/7/11 23:00:00
--  
 
t.fill("Sel  ect 单位名称,(Sel  ect count(*) from {成绩} b where a.单位名称=b.单位名称 and 考试名称= \'" & c2 & "\'and 学段=\'高中\' and 年级 =\'" & c3 & "\' and 分科=\'" & c4 & "\') As 参考人数,count(*) As " & bt & " from (Se  lect Top " & t3 & " 单位名称 from {成绩} where 考试名称= \'" & c2 & "\'and 学段=\'高中\' and 年级 =\'" & c3 & "\' and 分科=\'" & c4 & "\' order by 总分 desc) As a group by 单位名称","XXX", True)