我需要创建一个子查询,为每个模块具有最高成绩的学生显示student_id、student_first_name、module_name和数学成绩(科目‘数学’)。学生表通过student_id链接到成绩表,module_name、年级和科目存储在成绩表中。但我所拥有的似乎不是正确的 SELECT S.STUDENT_ID, S.LAST_NAME, G.SECTION_ID, G.MODULE_NAME, G.GRADE
FROM STUDENT S, GRADE G
WHERE S.STUDENT_ID = G.STUDENT_ID
AND G.GRADE IN (SELECT MAX(
嗨,我有两个表,它们有不同的列顺序,而且列名的大写不一样。如果这两个表的内容相同,我如何比较?
例如,我有两张学生成绩表。
table A:
Math English History
-------+--------+---------
Tim 98 95 90
Helen 100 92 85
table B:
history MATH english
--------+--------+---------
Tim 90
好吧,我有一个学生的关系,他们注册了多门学科。大多数学生只在2015年或2016年入学一年,但我有一个从2015年开始注册的科目,但在2016年也有一些。我想向那些只在2015年入学的学生们展示一下。然而,当我做我的选择声明,我也抓住了一个学生谁做这门学科,以及在2016年。主题代码包括主题完成的年份。
登记关系中的一些数据:
代码:
SELECT s.firstName, d.degreeCode
FROM students s, degrees d, enrolled e
WHERE s.studentID = d.studentID AND s.studentID = e.st
有人问我这条刁钻的问题:
Table: Student
ID NAME
1 JOHN
2 MARY
3 ROBERT
4 DENNIS
Table: Grade
ID GRADE
1 A
1 A
1 F
2 B
3 A
如何编写SQL查询来返回所有从未获得“F”成绩或从未选修过课程的学生的不同姓名(即,他们的ID不在成绩表中)?
诀窍是,你不能使用OUTER JOIN,UNION或DISTI
所以我使用Python和MySQL (使用mysql连接器)。虽然我是一个新手,但我已经成功地执行了一些基本的功能,到目前为止事情已经解决了。 在本例中,我有三个感兴趣的表:学生表、成绩表和STUDENT_GRADES表。正如您可能想到的,我添加了前两个的引用来填充第三个。 我这样做的方法如下: def StudentGradesToSQL(self, tableName, sqlConnectObject):
lItems = []
for student in self.listStudents:
for sGrade in student.grades:
我有一个名为marksheet的学生成绩表。
id | student | score | position
1 | Adora | 50 |
2 | Sam | 76 |
3 | Frank | 40 |
SELECT id, 1+(SELECT count(*) from marksheet a WHERE a.score >
b.score) as student_rank
FROM marksheet b
id | student |
我有两张桌子:
STUDENT GRADES
---------- ----------
id id
name person_id
address date
city test_name
phone grade
每个学生在成绩表中将有几个条目。我想知道是否可以使用SQL (Postgres)来选择所有学生以及他们的最新成绩信息。我基本上想要一个结果表,如下所示,其中date、test_name和date代表最新的结果(按日期)。
LATEST_GRADES
----------