MySql鏈表語句--部落格園老牛大講堂

來源:互聯網
上載者:User

標籤:例子   查詢   表之間   url   串連   主鍵   http   image   清除   

為什麼鏈表?--部落格園老牛大講堂

  因為表與表之間有關係,而且查詢時需要兩張表的某些資料。

鏈表的前提是:表與表之間必須設定主外鍵嗎?

  不是的,其實表與表之間不需要設定主外鍵關係,用資料庫語句就可以實現鏈表查詢,刪除,修改,增加等操作。

為什麼要設定主外鍵呢?

  通常我們看到表與表之間有關係,常常設定主外鍵。為什嗎?其實這樣做是為了規範!假設一個不瞭解你表結構的人,都能夠任意的修改你的外鍵。那這個表就不嚴謹了。

我們到底設不設主外鍵呢?
  分情況:1、如果表結構簡單,少量的表。邏輯不複雜。那麼這個就不需要設定主外鍵了。特別對於資料庫語句不熟悉的人,就方便多了。

      2、如果表結構複雜,有大量的表,邏輯複雜的。那麼自己不可能記住所有主外鍵之間的關係,那麼就需要設定主外鍵。

怎樣實現鏈表查詢呢?

  鏈表查詢又分為:左聯表,右鏈表。等.

  鏈表不僅可以進行查詢,還可以鏈表查詢,鏈表增加,鏈表刪除,鏈表修改。

 例子一、--部落格園老牛大講堂

  (左聯表)、現在有兩張表,a表與b表,a表主要欄位有:id,a?1,a2,a3。b表欄位有:id,b1,b1_id。其中a表的id為主鍵,b1_id為外鍵。如

     思路:左串連就是以左邊的a表為基礎,查詢出所關聯的資料。多餘的資料則清除,缺失的資料則為空白。   

 

左鏈表查詢結果:

  

例子二、--部落格園老牛大講堂

  (右聯表)、現在有兩張表,a表與b表,a表主要欄位有:id,a?1,a2,a3。b表欄位有:id,b1,b1_id。其中a表的id為主鍵,b1_id為外鍵。圖如上所示

     思路: 右串連就是以右邊的b表為基礎,原理與左聯結類似。

  如果是右串連的結果是:

 例子四、--部落格園老牛大講堂

    上面都是鏈表查詢結果,下面我說一個鏈表刪除操作。

    題目:現有兩張表:chapters表:id(主鍵),name。division表:id(主鍵),name_id(chapters的外鍵),part。

    要求:實現鏈表刪除操作。

    語句:DELETE c,d FROM chapters c JOIN division d ON c.id=d.name_id WHERE c.id=1

         

 

 

 

 

MySql鏈表語句--部落格園老牛大講堂

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.