數據庫左連接,右連接,內連接,外連接


  記筆記,記筆記

      我記得有人問過我這個問題,當時回答得不太好,我補上這個問題

    首先連接有:內連接,外連接(左外,右外),全連接(交集),交叉連接(笛卡爾積)

    先略兩個表

    

    首先左連接:SELECT * FROM test1 a LEFT JOIN test2 b ON a.id = b.id;

    (尷尬,join打錯了,畢竟英語沒有6級(#^_^!))

    解釋下就是以左邊表id(案例里面是test1)為基礎和右表id對比,左表有的右表也有就也出來,右表沒有的就NULL咯,右連接和左連接相反

    右連接:SELECT * FORM test1 a RIGHT JOIN test2 b ON a.id = b.id;

    

    enh,以右邊表id為基礎和左邊表id對比,右邊表有的左邊表也有就顯示出來,左邊表沒有的就NULL

    內連接:SELECT * FROM test1 a INNER JOIN test2 b ON a.id = b.id;

    

    解釋的話就是:兩個表的交集,就是左表和右表都有的才顯示出來

    全連接:(SELECT * FROM test1) UNION (SELECT * FROM test2);

     

     UNION是兩個交集,相當於兩張表數據和在一起(不重復),下面是會重復的UNION ALL:(SELECT * FROM test1) UNION ALL (SELECT * FROM test2);

       

    交叉連接:SELECT * FROM test1 CROSS JOIN test2;

     

          OVER

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM