前提:存在student(sid,sname,cid)和class(cid,cname)兩表
查詢:選出所有學生,同時返回班級名稱
法一:
SELECT sid,sname,cid, cname
FROM student,class
WHERE student.cid=class.cid;
法二:
SELECT sid,sname,cid, cname
FROM student
INNER JOIN class
ON student.cid=class.cid;
兩種方法的查詢結果一致,在實際使用中選擇法二。因為多表查詢 from x,y就是笛卡爾積,兩個100行的表就是1萬行,查詢效率低下。
讀書考試時,寫哪種方法都可以,都是正確的,但是在實際使用時就會考慮到效率問題,這就是理論與實踐的差異吧~