原創聲明:本文為作者原創,未經允許不得轉載,經授權轉載需注明作者和出處
內聯也可以的到上章同樣的效果:
SELECT s.id sid, s.name sname, s.gender sgender,s.stu_no sno,c.name FROM class c JOIN student s ON c.id = s.class_id;
SELECT s.id sid, s.name sname, s.gender sgender,s.stu_no sno,c.name FROM class c inner JOIN student s ON c.id = s.class_id;
SELECT s.id sid, s.name sname, s.gender sgender,s.stu_no sno,c.name FROM class c cross JOIN student s ON c.id = s.class_id;
上述三種寫法是一樣的都是內聯,內聯查詢使用關鍵字JOIN或CROSS JOIN 或 INNER JOIN,最常用的還是INNER JOIN。
除了這三種,還有一種比較簡單的寫法:
SELECT s.id sid, s.name sname, s.gender sgender,s.stu_no sno,c.name FROM class c,student s WHERE c.id = s.class_id;
據說這種寫法的運行效率要比上面三種低很多,所以一般不怎么用它。
內聯理解起來比左右聯更簡單,就是把兩個表中,class的id和student的class_id都存在并且兩個相等的數據連接成一條數據。因此在數據庫中有前面兩種連接有部分為null的數據這一整行都沒有了。