mysql 聯結主鍵 MySQL基礎 聯結

2021-10-18 02:20:46 字數 1500 閱讀 7310

聯結表

mysql是一種關聯式資料庫,所謂關係就是指把資料分解為多個表,乙個類據一》個表。各表之間通過某些常用的值(即關係)相關聯

就比如說有乙個表儲存了**商資訊,**商id為主鍵。另乙個表儲存了一些商品的資訊,但是也需要知道商品相應的**商資訊。那麼可以給商品設定乙個**商id>,稱為外來鍵,通過這個外來鍵來去**商表查詢**商的資訊

外來鍵(foreign key): 外來鍵為某個表中的一列,它包含另乙個表的主鍵值,定》義了兩表的關係

就比如說,有兩張表:

mysql> select * from product;

| name | vent_id |

| koh  |       1 |

| naoh |       2 |

| kf   |       1 |

| naf  |       3 |

mysql> select * from vent;

| vent_id | name     |

|       1 | wanqing  |

|       2 | alading  |

|       3 | guoyao   |

|       4 | maikelin |

mysql> select product.name, product.vent_id,vent.name

-> from product,vent

-> where product.vent_id=vent.vent_id;

| name | vent_id | name    |

| kf   |       1 | wanqing |

| koh  |       1 | wanqing |

| naoh |       2 | alading |

| naf  |       3 | guoyao  |

可以看到通過使用where設定過濾條件,實現了兩張表的聯結。這種聯結是等》值聯結,也被稱為內部聯結(inner join)

上述帶where語句的更加標準的寫法是:

mysql> select product.name, product.vent_id,vent.name

-> from product inner join vent

-> on product.vent_id=vent.vent_id;

| name | vent_id | name    |

| kf   |       1 | wanqing |

| koh  |       1 | wanqing |

| naoh |       2 | alading |

| naf  |       3 | guoyao  |

與內部聯結不同的是,外部聯結會包括沒有聯結的行,也就是會出現null。使用時必須指定是left outer join還是right outer join,分別表示外部聯結左邊還是右邊的表

mysql使用聯結的好處 Mysql 聯結

聯結 簡介聯結是一種機制,用來在一條select語句中關聯表,聯結是由mysql根據需要而建立的,它存在於select語句的執行當中。在執行資料檢索查詢中使用聯結是sql強大的功能之一,聯結是利用sql的select能執行的最重要的操作,在使用聯結之前,我們必須要了解下關係表。關係表來個栗子說明下 ...

MYSQL 多表聯結

參考 join與逗號的區別 交叉連線的操作只有兩種 inner join和cross join。join,是 inner join的預設寫法。cross join,因為有明確的語義,就是要生成笛卡爾全集。因此之後就不容許跟on條件。inner join,是對笛卡爾全集的補充處理。因此可以跟條件。由於...

mysql 聯結查詢

mysql聯合查詢效率較高,以下例子來說明聯合查詢 內聯 左聯 右聯 全聯 的好處 t1表結構 使用者名稱,密碼 userid int usernamevarchar 20 passwordvarchar 20 1 jack jackpwd 2 owen owenpwd t2表結構 使用者名稱,密碼...