2011-04-19 47 views
0

我有2代表具有以下结构: -帮助中编写SQL查询的SQL Server

1)Student_Details: -

studentId(pk) 
studentName 
studentGrade 
studentExamStatus 

2)Student_Result: -

studentId(fk) 
studentRank 

数据仅在studentExamStatusP时插入到第二个表中,否则如果studentExamStatusF,则该第二个表中没有该学生的记录。

我想编写查询,它会给我所有学生的所有细节以及排名,如果没有排名空白数据或空值被提取。

我试图用正常的加入,但其只给我的学生排名,而不是所有的学生

回答

3
SELECT sd.*, sr.StudentRank 
FROM Student_Details as SD 
LEFT OUTER JOIN Student_Result as SR 
    ON sd.StudentID = Sr.StudentID 

没有Student_Result记录将返回NULLStudentRank任何学生。