我必须编写一个从多个表中检索数据的查询,我已经尽了最大努力来获取它但却一直卡住了。
我有以下表格:
这是我需要写的查询:
显示21-11-1001数据库考试相关成绩的学生姓名。
我非常感谢你的时间。
答案 0 :(得分:1)
我在猜测"数据库"是一个模块名称。
我希望21-11-1001是grade.date,而不是某种代码。
我不知道为什么你列出了sql-server和mysql。我将假设mysql,因为我从未在现实生活中使用自然连接。无论如何我都会假设任何架构/参考,所以我只是让引擎弄明白。
select s.name, g.grade
from grades g
natural join student s
natural join module m
where m.modulename='Databases'
and g.date='1001-11-21'
你去了,一千年前的成绩。
答案 1 :(得分:0)
这样的东西?:
select s.name, g.grade
from student s
join grade g on s.stud_no = g.stud_no
join module m on m.module_code = g.module_code
where m.modulename = '21-11-1001'
取决于哪个列包含21-11-1001
。如果它位于module
列的modulename
表格中,则应该有效。