Select [column list] from Left_Table_Source [{Cross/Outer}APPLY] Right_Table_Source
Create table Student(StuId int ,Name varchar(10))Create table Details(Sno int identity ,StuId int ,DateOfJoining datetime)Insert into Student values(1001,'Ram'),(1002,'Surya'),(1003,'Sam')Insert into Details values(1001,'2011-05-24'),(1002,'2011-05-28')select * from Studentselect * from Details
CREATE FUNCTION Fn_Student_Details(@StuId int)RETURNS TABLEAS RETURN(SELECT * FROM Details WHERE StuId=@StuId)
select S.StuId,S.Name,DateOfJoining from Student S cross apply Fn_Student_Details(S.StuId)StuId Name DateOfJoining----- ---- -------------------1001 Ram 2011-05-24 00:00:00.0001002 Surya 2011-05-28 00:00:00.000
select S.StuId,S.Name,DateOfJoining from Student S outer apply Fn_Student_Details(S.StuId)StuId Name DateOfJoining----- ---- --------------------1001 Ram 2011-05-24 00:00:00.0001002 Surya 2011-05-28 00:00:00.0001003 Sam NULL