- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在这里试图归档的是,仅选择学生表现最好的科目,包括必修科目 (mustSubjectId
),并根据成绩范围总计输出结果。 等级
越高,分数越低添加总和(标记)
作为分数。
输入参数示例:
$subjectlimit = '3'; // total subjects a student should pass including mandatory subject to qualify
$idexam = '1'; // targeted examination id
$mustSubjectId = '201'; // mandatory subjectid
$studentId = '1'; // a student to get
表格检查
idcandidate | subject_id | score------------------------------------1 | 200 | 30 1 | 201 | 60 (note: a must subject)1 | 202 | 80 1 | 204 | 90 1 | 203 | 50 1 | 205 | 54 1 | 209 | 37 8 | 200 | 68 2 | 200 | 20 1 | 206 | 50
考试规则表
idexam | marks | grade---------------------------------------1 | 30 | 9 1 | 45 | 8 1 | 65 | 7 1 | 70 | 61 | 80 | 5 1 | 85 | 4 1 | 90 | 3 1 | 95 | 2 1 | 100 | 1
输出限制为3
Idcandidate| idexam | subject_id| grade1 | 1 | 204 | 31 | 1 | 202 | 51 | 1 | 201 | 8
最终输出
Idcandidate| idexam | points1 | 1 | 16
我不擅长复杂的 MySql 查询,希望你能帮忙
编辑
I was mistaken by JNevill in the comments, the table examinations does not have idexam and no relationship with examrules. The selection should be something like
Select top scores including mandatory subject score from examinations where idcandidate = ‘1’ limit 3 then check the selected scores grade in examrules where idexam = ‘1’ , the grades which will be found should be calculated as points sum (grade) as points
查询的目的
There is a sheet showing the grades of all subjects of a class against students, then on a certain row the sheet suppose to show the points the student gets on 3 subjects including mandatory subject. For a student to pass examination he/she should pass three subjects including mandatory subject.
注意正在运行的sql报告无法识别select top,我也尝试使用fiddle,fiddle也无法识别它。 从 idcandidate = ‘1’的考试中选择前 3 名
最佳答案
我建议类似(根据需要用参数替换值):
这将为您提供前 2 个最高分,但这些分数不是您的“必修科目”:
select TOP 2 en.idcandidate, en.idexam, en.subject_id, en.grade
FROM examinations en
INNER JOIN examrules er ON en.idexam = er.idexam
where en.subject <> $mustSubjectId
order by en.score desc
这为您提供了“必须主题”:
select en.idcandidate, en.idexam, en.subject_id, en.grade
FROM examinations en
INNER JOIN examrules er ON en.idexam = er.idexam
where en.subject = $mustSubjectId
这将为您提供“限制为 3 的输出”(只需将一个附加到另一个):
select TOP 2 en.idcandidate, en.idexam, en.subject_id, en.grade
FROM examinations en
INNER JOIN examrules er ON en.idexam = er.idexam
where en.subject <> $mustSubjectId
order by en.score desc
UNION ALL
select en.idcandidate, en.idexam, en.subject_id, en.grade
FROM examinations en
INNER JOIN examrules er ON en.idexam = er.idexam
where en.subject = $mustSubjectId
最后将成绩相加:
select idcandidate, idexam, sum(en.grade) as points FROM
(
select TOP 2 en.idcandidate, en.idexam, en.subject_id, en.grade
FROM examinations en
INNER JOIN examrules er ON en.idexam = er.idexam
where en.subject <> $mustSubjectId
order by en.score desc
UNION ALL
select en.idcandidate, en.idexam, en.subject_id, en.grade
FROM examinations en
INNER JOIN examrules er ON en.idexam = er.idexam
where en.subject = $mustSubjectId
) a group by a.idcandidate, a.idexam
我还没有机会对此进行测试,但希望有所帮助!
关于MySql 查询选择最高的学生分数,包括必须学科分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26529320/
我刚刚开始学习,我的一项练习需要帮助。 我需要最终用户输入每个月的降雨量。然后我需要输出平均降雨量、最高月份和最低月份以及降雨量高于平均水平的月份。 我一直在最高和最低中得到相同的数字,我不知道为什么
我试图让一排 div 都与最高的那个的高度相匹配,所以它们看起来是统一的。 我已经阅读了很多这方面的资料,但似乎找不到任何适用于跨浏览器的解决方案。 我目前使用的脚本是: var maxHei
我有一个像 [1,4,3,1,6,5,1,4,4] 的数组 这里最高元素频率是 3 ,我需要从数组中选择频率为 3 的所有元素,如上例中的 [1,4] 。 我已经尝试过这个 var count = {
我有一个学生记录列表,grades ,我想按 GPA 排序,返回前 5 个结果。由于某种原因count awk '{ if (count awk '{ if (count<=8) print $3,
我有一个用于显示博客文章的页面。在页面的开头,我使用以下 SQL 获取数据: SELECT posts.*, count(comments.post_id) as number_of_comments
我有一张 table 城市 |状态|比赛|值(value) 可以有多个相同城市/州/种族和不同值的记录。 我想创建一个新表,其中每个城市|州|种族有一条记录 与 计数(原始表中包含城市/州/种族的记录
我是一名初级 Java 程序员(例如 0 级...)。我正在做这个项目,但我已经被难住了好几天了。我可能还有很多我没有注意到的小错误。 项目是这样的: 要求用户输入从 0.00 到 100.00 的一
我已经对我的数据进行了分组。现在,我要做的是每周从“高”列中选择最高值,并从“低”列中选择最低值,然后使用最高值减去最低值得到范围。但是代码总是错误的。有人对我有想法吗? 这是我的 DataFrame
所以几个月前我在参加编程面试时,由于某种原因这个问题让我绊倒了。我可以想到几个解决方案,但其中大多数似乎效率极低。虽然多年来我一直以某种身份进行编程,但我目前正在大学攻读 CS 学位,所以我的引用点可
我已经制定了一个程序来显示给定日期的特定时间的最高和最低流行项目。该过程没有错误或异常,并且一切正常。如您所见,为了显示 Items 的第一条记录,查询重复了两次,但唯一的区别在于顺序(ASC 和 D
我正在尝试将配对的 div 设置为相同的高度。 Some text Some text Some textSome textSome textSome textSome text Som
R 提供了最大值和最小值,但除了对整个向量进行排序然后从此向量中选取值 x 之外,我没有看到一种真正快速的方法来查找顺序中的另一个值。 例如,是否有更快的方法来获取第二高值? 最佳答案 使用sort(
这是我的命令: top -b -n 1 | head -3 | tail -n 1 | awk '{ print $2 }' 我运行一个 bash 脚本来获取这些详细信息(还有平均负载和内存消耗)并将
对于这个计划,我的目标是...使用 findKth 查找最高分、最低分、中位数和平均分用户必须输入数字(输入-1以停止扫描),但他们不知道有多少个以及是否已排序但是,我在尝试执行此操作时遇到了一些问题
我正在创建这个网站: https://www.melkerhei.be/smeltkroes/index.html 左上角的标志应该是可以点击的。这是代码:
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我的 table 是这样的: name | var ---------------- Joe | 3 Liz | 1 Liz | 4 Joe | 2 Peter
我有这个: function sayHello() { return new Promise( resolve => { throw new Error('reject');
JSFiddle:Example 我正在寻找一种方法来使容器 div 的高度等于其最高的子级。 每个其他子项的大小都应调整为容器的高度。 如果子元素超出其宽度,我还需要容器水平滚动。 到目前为止,我已
我有一个大小为 208 的列表(208 个句子数组),它看起来像: all_words = [["this is a sentence ... "] , [" another one hello bo
我是一名优秀的程序员,十分优秀!