本篇内容主要讲解“什么是mysql右外连接查询”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是mysql右外连接查询”吧!
1、以join右表为主表,显示右表的所有数据,根据条件查询join左表的数据。如果满意,显示。如果不满意,显示在null。
2、可以理解为在内部连接的基础上,确保右表的所有数据都显示。
语法
select 字段 from a right [outer] join b on 条件
实例
#左连接 #查询所有部门信息以及该部门员工信息 SELECT did,dname,eid,ename FROM t_department d LEFT JOIN t_employee e ON d.did=e.dept_id; SELECT did,dname,eid,ename FROM t_employee e LEFT JOIN t_department d ON d.did=e.dept_id; SELECT did,dname,eid,ename FROM t_department d RIGHT JOIN t_employee e ON d.did=e.dept_id; UPDATE t_employee SET dept_id=NULL where eid=5; SELECT did,dname,eid,ename FROM t_department d LEFT JOIN t_employee e ON d.did=e.dept_id; WHERE e.dept_id IS NULL; #查询部门信息,保留没有员工的部门信息 SELECT did,dname,eid,ename FROM t_department d RIGHT JOIN t_employee e ON d.did=e.dept_id; WHERE e.dept_id IS NULL; SELECT did,dname,eid,ename FROM t_employee e LEFT JOIN t_department d ON d.did=e.dept_id; WHERE e.dept_id IS NULL; #查询所有员工信息,以及员工的部门信息 SELECT eid,ename,did,dname FROM t_employee e LEFT JOIN t_department d ON e.dept_id=d.did; SELECT eid,ename,did,dname FROM t_department d LEFT JOIN t_employee e ON e.dept_id=d.did; #查询员工信息,仅保留没有分配部门的员工 SELECT eid,ename,did,dname FROM t_employee e LEFT JOIN t_department d ON e.dept_id=d.did WHERE e.dept_id IS NULL; #查询员工信息,不保留没有分配部门的员工 SELECT eid,ename,did,dname FROM t_employee e LEFT JOIN t_department d ON e.dept_id=d.did WHERE e.dept_id IS NOT NULL; SELECT id,ename,tid,dname FROM student_info s LEFT JOIN student_test t ON s.id_id=t.tid WHERE t.tid IS NOT NULL; SELECT * FROM student; SELECT * FROM souce; #分析 左右外连接 #显示所有学生的测试信息 SELECT st.s_id,name,C,Java FROM student st LEFT JOIN souce s ON st.s_id=s.s_id; #显示参加考试的学生的测试信息 SELECT st.s_id,name,C,Java FROM student st RIGHT JOIN souce s ON st.s_id=s.s_id;
到此,相信大家对“什么是mysql右外连接查询”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。