navicat中如何進(jìn)行聯(lián)合查詢

navicat中如何進(jìn)行聯(lián)合查詢

笛卡爾積

多表查詢,表名之間要用逗號隔開。這樣將多張表里面的數(shù)據(jù)全部查出來,查出來的方式就是笛卡爾積的方式(完全組合)

這樣查出來的數(shù)據(jù),有很多是無效的數(shù)據(jù)。可以給多表查詢增加條件,查到想要的信息。

內(nèi)連接

可以通過在設(shè)計數(shù)據(jù)庫的時候,表與表之間的關(guān)聯(lián)屬性,過濾出有有效的信息。

顯式內(nèi)連接

SELECT?*?FROM?employee?AS?e1,enterprise?AS?e2?WHERE?e1.enterpriseId-e2.id;

隱式內(nèi)連接

SELECT?*?FROM?employee?e1?INNER?JOIN?enterprise?e2?ON?e1.enterpriseId=e2.id;

隱式內(nèi)連接和顯式內(nèi)連接沒有本質(zhì)區(qū)別。

相關(guān)推薦:《Navicat for mysql使用圖文教程

外連接

以一張表為基礎(chǔ),將這張表中的所有數(shù)據(jù)全部查出來,然后跟另外一張表有關(guān)聯(lián),如果關(guān)聯(lián)到則顯示其信息,如果沒有關(guān)聯(lián)則不顯示為NULL

左外連接

SELECT?*?FROM?employee?e1?LEFT?JOIN?enterprise?e2?ON?e1.enterpriseId=e2.id;

右外連接

SELECT?*?FROM?employee?e1?RIGHT?JOIN?enterprise?e2?ON?e1.enterpriseId=e2.id;

navicat中如何進(jìn)行聯(lián)合查詢

表的別名

使用表的別名有兩種原因:

1.為了方便、簡潔。

2.如果是從重復(fù)的表中進(jìn)行多表查詢,則必須使用別名。

使用別名的方式有兩種:

1.直接在表的名字后面加個空格,然后起新的名字。

SELECT?*?FROM?employee?e1,enterprise?e2?WHERE?e1.enterpriseId-e2.id;

2.as與直接起名沒有區(qū)別? 但是看起來比較規(guī)范sql語句會比較容易查看。

SELECT?*?FROM?employee?AS?e1,enterprise?AS?e2?WHERE?e1.enterpriseId-e2.id;

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊14 分享