上篇文章我們學習對數據的單表操作,我們現在看數據庫中的多表關聯操作。很多時候我們的數據是單獨分開存儲的,這時候我們就需要多張表連接起來去去獲取我們想要的數據。
外鍵約束
在多表操作時,每張表與另外的表之間的關係有一個對一個,有一個對多個,也有多個對多個的關係,而這些表之間的關係西喲啊通過外鍵來維護。外鍵也就是相當於我們所說的關係。
特徵如下:
- 外鍵必須是另外的一張表或者自身表的主鍵的值,換句話說就是你在你的圈裡面是老大,到了我這個圈裡面我是老大,我能通過你找到你手裡的人,我的僕人的僕人就是我的僕人。
- 外鍵是可以有重複值的,不同的圈子裡面,扮演不同的角色。
- 外鍵也是可以為空值的。
- 一張表可以有許多的外鍵,總之外鍵沒有主鍵那麼嚴格。
上述語句含義是設置一個外鍵 foreign key 是orders中的uid,起名字叫FK_UIK;設置一個主鍵 references 是 USER中的uid
交叉連接
交叉連接的語法就是上圖的2中方法,我們可以使用cross join或者兩張表之間加英文逗號來實現兩表的連接。
除此之外,我們使用 A join B也是可實現的。
實現原理
內連接
內連接也就是我們說的自身連接,在內連接中我們有2中語法
顯示內連接語法:
隱式內連接語法:
外連接
我們將外連接又分成了左外連接與右外連接。
左外連接,就是以左邊為主,我們將查詢到的結果是左邊的表全部要顯示,右面的表補齊。如下圖。
右外連接,就是以右邊為主,與左外連接相反。
聯合查詢
我們可以通過聯合查詢自動消除重複的記錄。
子查詢
我們將放在外面的查詢語句稱為父查詢,而放在裡面查詢稱為子查詢。下圖所示。
補充
Limit 起始行數 | 每頁顯示的行數
Md5() 給添加的密碼加密
下篇我們帶來的是在Java中對數據庫進行連接操作,也就是JDBC,如果有幫助到大家,關注支持一下唄~
感謝堅持關注的朋友
世界很大,幸好有你
歡迎在評論區留下你的問題或困惑,我將每天與你分享我的觀點和心得。
聚焦最新科技諮訊,探尋未來智能領域,我是女陶。
閱讀更多 女陶愛柚子 的文章