这篇文章主要给大家介绍了关于关系型数据库中表的几种连接方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
关系型数据库表中的连接方式其实非常简单,这里就简单的罗列出他们的特点。
表的连接(加入)可以分为内连接(联接/内部联接)和外连接(左连接/右连接).
首先我们看一下我们本次演示的两个表:
来自学生的mysql SELECT *
- - - -
| s_id | s_name | age | c_id |
- - - -
| 1 |小明| 13 | 1
| 2 |小红| 41 | 4
| 3 |小霞| 22 | 3
| 4 |小岗| 32 | 1
| 5 |小丽| 41 | 2
| 6 |吴王| 13 | 2
| 7 | lisi | 22 | 3 |
| 8 |张三| 11 | 9
- - - -
一组8行(0.00秒)
mysql SELECT * FROM class
- - -
| c_id | c_name | count |
- - -
| 1 |数学| 65 |
| 2 |中文| 70 |
| 3 |英语| 50 |
| 4 |历史记录| 30 |
| 5 |生物学| 40 |
- - -
一组5行(0.00秒)
首先,表要能连接的前提就是两个表中有相同的可以比较的列。
1.内连接
MySQL SELECT * FROM studentc _ id=class。身份证上的学生内部联接类;
- - - - - - -
| s标识| s名称|年龄| c_id | c_id | c_name |计数|
- - - - - - -
| 1 |小明| 13 | 1 | 1 |数学| 65 |
| 2 |小红| 41 | 4 | 4 |历史| 30
| 3 |小霞| 22 | 3 | 3 |英语| 50 |
| 4 |小刚| 32 | 1 | 1 |数学| 65 |
| 5 |小丽| 41 | 2 | 2 |中文| 70 |中文
| 6 |吴王| 13 | 2 | 2 |中国| 70 |
| 7 |利西语| 22 | 3 | 3 |英语| 50 |
- - - - - - -
一组七行(0.00秒)
简单的讲,内连接就是把两个表中符合条件的行的所有数据一起展示出来,即如果不符合条件,即在表A中找得到但是在B中没有(或者相反)的数据不予以显示。
2.外连接
MySQL SELECT * FROM student LEFT JOIN class ON student。c _ id=class。c _ id
- - - - - - -
| s标识| s名称|年龄| c_id | c_id | c_name |计数|
- - - - - - -
| 1 |小明| 13 | 1 | 1 |数学| 65 |
| 2 |小红| 41 | 4 | 4 |历史| 30
| 3 |小霞| 22 | 3 | 3 |英语| 50 |
| 4 |小刚| 32 | 1 | 1 |数学| 65 |
| 5 |小丽| 41 | 2 | 2 |中文| 70 |中文
| 6 |吴王| 13 | 2 | 2 |中国| 70 |
| 7 |利西语| 22 | 3 | 3 |英语| 50 |
| 8 |张三| 11 | 9 | NULL | NULL | NULL |
- - - - - - -
一组8行(0.00秒)
MySQL SELECT * FROM student RIGHT JOIN class ON student。c _ id=class。c _ id
- - - - - - -
| s标识| s名称|年龄| c_id | c_id | c_name |计数|
- - - - - - -
| 1 |小明| 13 | 1 | 1 |数学| 65 |
| 4 |小刚| 32 | 1 | 1 |数学| 65 |
| 5 |小丽| 41 | 2 | 2 |中文| 70 |中文
| 6 |吴王| 13 | 2 | 2 |中国| 70 |
| 3 |小霞| 22 | 3 | 3 |英语| 50 |
| 7 |利西语| 22 | 3 | 3 |英语| 50 |
| 2 |小红| 41 | 4 | 4 |历史| 30
| NULL | NULL | NULL | NULL | 5 |生物学| 40 |
- - - - - - -
一组8行(0.00秒)
上面展示了外接的两种情况:左接和右接。两者几乎一样,唯一不同的是左连通主表是左表,右连通主表是右表。外连接和内连接的区别在于,它会显示主表中的所有行,但主表中有数据,其他表中没有的数据用NULL代替。
总结
关于MySQL表的几种连接方法的这篇文章到此为止。有关MySQL表的连接方法的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。