我在SQL Server2008中创建了一个存储过程,以便从第一个表中查找学生数据,从第二个表中查找健康详细信息,从第三个表中查找出勤详细信息。我想使用left outer或inner join连接这些表。
SQL-query如下:
create proc [dbo].[GetStdProfile]
@Adm_No int
AS
BEGIN   
    SELECT sd.*,hd.*,ad.* 
    FROM Student_Details sd left outer join Health_Details hd left outer join Attendance_Details ad 
    on sd.Adm_No=hd.Adm_No  and sd.Adm_No = ad.Adm_No and hd.Adm_No=ad.Adm_No
END发布于 2013-04-24 14:21:26
像这样修改您的查询:
create proc [dbo].[GetStdProfile]
    @Adm_No int  
BEGIN   
    SELECT sd.*,hd.*,ad.* 
    FROM Student_Details sd 
       left outer join Health_Details hd on sd.Adm_No = hd.Adm_No
       left outer join Attendance_Details ad on hd.Adm_No = ad.Adm_No
END注意:您尚未使用参数@Adm_No。如果不需要,请将其删除。
https://stackoverflow.com/questions/16184639
复制相似问题