1. 程式人生 > >mysql的full join的實現

mysql的full join的實現

資料庫多表查詢主要有以下幾種

inner join內連線查詢,只有兩個表都匹配才會顯示記錄

left /right [outer] join 左/右外連線  左表匹配右表,左表全部顯示,結果中缺少的右表字段的值 則返回null,右外連線相反

full join 全連線,只要其中某個表存在匹配,就會返回行,不存在的欄位返回null   

自連線  就是虛擬出同一張表,在一張表上實現多表查詢

【注意】:

在mysql裡是不支援full join的

但仍然可以同過 左外連線+ union+右外連線    實現

例:

</pre><pre name="code" class="sql"> SELECT * FROM Persons p LEFT OUTER JOIN Orders o ON p.pid=o.pid
  UNION 
 SELECT * FROM Persons p RIGHT OUTER JOIN Orders o ON p.pid=o.pid;