我在MS Access中有三个表格如下:
--Students(ID, Name, Class)
--Subjects (ID, Name)
--Marks (ID, StudentID, Subject.ID)
关系如下:
Marks.Subject = Subjects.ID
Marks.StudentID = Students.ID
请帮我写一个可以返回学生姓名和该学生的所有主题姓名和标记的查询。
目前我有这个查询,但它会单独返回标记。
select Students.Name, Marks.Obtained, Subjects.Name from Marks
inner join Students on Marks.StudentName = Students.ID
答案 0 :(得分:1)
您已加入students
和marks
表加入Subjects
表格
SELECT students.NAME,
marks.obtained,
subjects.NAME
FROM ( marks
INNER JOIN students
ON marks.studentname = students.id )
INNER JOIN subjects
ON marks.subject = subjects.id
答案 1 :(得分:0)
试试这个:
select Students.Name, Marks.Obtained, Subjects.Name from Marks
inner join Students on Marks.Subject = Subjects.ID
Marks.StudentID = Students.ID
答案 2 :(得分:0)
This will help you :
select Students.Name, Marks.Obtained, Subjects.Name from Marks
inner join Students on Marks.StudentName = Students.ID
inner join Subjects on Marks.Subject = Subjects.ID;
答案 3 :(得分:0)
试试这个:
SELECT a.name, b.obtained, c.name
FROM studentTable a
INNER JOIN marksTable b ON a.ID = b.StudentID
INNER JOIN subjectsTable c ON b.Subject.ID = c.ID
答案 4 :(得分:0)
我会按如下方式重新排序:
select A1.Name as 'Student Name'
, A3.Name as 'Subject'
, A2.Obtained as 'Mark Obtained'
from Students AS A1
inner join Marks as A2 on A1.ID = A2.StudentID
inner join Subjects AS A3 on A2.Subject = A3.ID GO;
我希望有所帮助。