原始表
对于一个课程表,规定了先修课
–A,以及A的先修课
SELECT * FROM dbo.course
GO
问题描述
现在想知道课程的间接先修课,也就是某一课程先修课的先修课,有两种方法:
方法1
–A的间接先修课–方法1
SELECT A.cNo,A.cName,B.PrecNo
FROM dbo.course A,dbo.course B
WHERE A.PrecNo=B.cNo
GO
方法2
–A的间接先修课程–方法2
SELECT A.cNo,A.cName,B.PrecNo
FROM dbo.course A JOIN dbo.course B
ON A.PrecNo=B.cNo
GO
总结:用逗号和where连接的两个表,相当于是 innner join(可简写为join)和on连接的表