当前位置 : 主页 > 网络编程 > 其它编程 >

10连接查询

来源:互联网 收集:自由互联 发布时间:2023-07-02
1.笛卡尔积查询select*fromdept,emp--此条语句的结果是两张表相乘的结果。如果左边表有m条记录,右边表有n条记录,则查询出m*n条记录。但这样的结果中往往包含大量 1.笛卡尔积查询 selec
1.笛卡尔积查询select*fromdept,emp--此条语句的结果是两张表相乘的结果。如果左边表有m条记录,右边表有n条记录,则查询出m*n条记录。但这样的结果中往往包含大量

技术分享图片 技术分享图片

1.笛卡尔积查询

select * from dept,emp -- 此条语句的结果是两张表相乘的结果。如果左边表有m条记录,右边表有n条记录,则查询出m*n条记录。但这样的结果中往往包含大量错误数据,一般不使用

技术分享图片

可这样修改

2. 内连接查询: 查询出左边表有且右边表也有的记录

● select * from dept,emp where dept.id = emp.dept_id;

● select * from dept inner join emp on dept.id = emp.dept_id;

技术分享图片

3.外连接查询

左外连接查询 :在内连接的基础上增加上左边表有而右边表没有的记录

● select * from dept left join emp on dept.id = emp.dept_id;

技术分享图片

右外连接查询 :在内连接的基础上增加上右边表有而左边表没有的记录

● select * from dept right join emp on dept.id = emp.dept_id;

技术分享图片

全外连接查询: 但mysql 不支持这样的语法

● select * from dept full join emp on dept.id = emp.dept_id;

可先查左外,再查右外。然后合并

● select * from dept left join emp on dept.id = emp.dept_id

union

select * from dept right join emp on dept.id = emp.dept_id;

技术分享图片

查询4号部门的名称和其中员工的姓名

技术分享图片

上一篇:phpstorm2022 激活码[最新免费获取]
下一篇:没有了
网友评论