navicat怎么進行多表查詢

navicat怎么進行多表查詢

笛卡爾積

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

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

內連接

可以通過在設計數據庫的時候,表與表之間的關聯屬性,過濾出有有效的信息。

顯式內連接

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

隱式內連接

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

隱式內連接和顯式內連接沒有本質區別。

相關推薦:《Navicat for mysql使用圖文教程

外連接

以一張表為基礎,將這張表中的所有數據全部查出來,然后跟另外一張表有關聯,如果關聯到則顯示其信息,如果沒有關聯則不顯示為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怎么進行多表查詢

表的別名

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

1.為了方便、簡潔。

2.如果是從重復的表中進行多表查詢,則必須使用別名。

使用別名的方式有兩種:

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

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

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

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

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享