1. 程式人生 > >mysql的連線查詢

mysql的連線查詢

只說連線查詢,不說子查詢
內連線:
等值連線
非等值連線
交叉連線
A 表有n 行,B表有m 行
結果集中有n*m 行
自身連線(需要使用別名)

經典的查詢每門課的間接先修課
select  first.cno,second.cpno
from course first, course second
where first.cpno=second.cno;

外連線
在通常的連線操作中,只有滿足連線條件的元組才能作為結果輸出, 也就是上面的內連線,外連線則不然,即使從表沒有匹配的元組,也會把主表的記錄放在結果集中。

select student.*,sc.*
from
student left outer join sc on student.sno=sc.sno;
student 是主表,sc 是從表 需要注意的是用的是on 不是where

左外連線 left outer join
右外連線 right outer join
全外連線 full outer join

問題來了!!!為什麼叫內連線和外連線呢???