学习地址:
撩课-JavaWeb系列1之基础语法-前端基础
撩课-JavaWeb系列2之XML
撩课-JavaWeb系列3之MySQL
撩课-JavaWeb系列4之JDBC
撩课-JavaWeb系列5之web服务器-idea
连接查询
什么是连接查询
也可以叫跨表查询,
需要关联多个表进行查询
什么是笛卡尔集
假设集合A={a,b},集合B={0,1,2},
则两个集合的笛卡尔积为
{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。
可以扩展到多个集合的情况
同时查询两个表,出现的就是笛卡尔集结果
![](https://img.haomeiwen.com/i577844/ec8b2b76462e51fb.png)
![](https://img.haomeiwen.com/i577844/9f7ddc6ae505639a.png)
![](https://img.haomeiwen.com/i577844/76ba2879aefd9416.png)
查询时给表起别名
![](https://img.haomeiwen.com/i577844/5107e37f2aa52b06.png)
多表联查,如何保证数据正确
在查询时要把主键和外键保持一致
![](https://img.haomeiwen.com/i577844/021853fc470fdd0d.png)
![](https://img.haomeiwen.com/i577844/0314ab113111164c.png)
原理
![](https://img.haomeiwen.com/i577844/030739bc96cef59f.png)
根据连接方式分类
内连接
等值连接
两个表同时出现的id号(值)才显示
![](https://img.haomeiwen.com/i577844/a32871d0826462dc.png)
与多表联查约束主外键是一样,只是写法改变了。
ON后面只写主外键
如果还有条件直接在后面写where
![](https://img.haomeiwen.com/i577844/4c51f9b871a5a9b7.png)
多表联查后面还有条件就直接写and
多表连接
建立学生,分数,科目表
![](https://img.haomeiwen.com/i577844/fb276db81fd9d566.png)
使用99连接法
![](https://img.haomeiwen.com/i577844/6b32417ebe7e73eb.png)
使用内联查询
![](https://img.haomeiwen.com/i577844/d70a7ecf1c231116.png)
![](https://img.haomeiwen.com/i577844/c402bfe96581f4d4.png)
网友评论