数据库之连接查询
什么是连接查询?
连接查询: 将多张表(可以大于两张)进行记录的连接(按照某个指定的条件进行数据的拼接);最终的结果是:记录数有可能变化,字段数 一定会增加(至少是两张表的合并)
为什么需要连接查询?
在用户查看数据的时候,数据来源于多张表而不是一张表。
连接查询分类
sql将连接查询分为四类:内连接,外连接,自然连接和交叉连接。
交叉连接
交叉连接 cross join
,从一张表中循环取出每一条记录,每条记录都会去另外一张表中匹配,匹配是没有条件的匹配,最终形成的结果叫做笛卡尔积
mysql> select * from user cross join score;
+----+-------+-------+------+-------+-------+
| id | name | pwd | id | class | score |
+----+-------+-------+------+-------+-------+
| 1 | echo1 | 00000 | 1 | 1 | 20 |
| 2 | echo2 | 00001 | 1 | 1 | 20 |
| 3 | echo3 | 00003 | 1 | 1 | 20 |
| 10 | cicic | 00000 | 1 | 1 | 20 |
| 1 | echo1 | 00000 | 1 | 2 | 78 |
| 2 | echo2 | 00001 | 1 | 2 | 78 |
| 3 | echo3 | 00003 | 1 | 2 | 78 |
| 10 | cicic | 00000 | 1 |