mysql查询之内连接查询与联合查询

2021-08-27  本文已影响0人  zlchen
内连接:获取两个表中字段匹配关系的记录

主要语法:INNER JOIN 表名 ON 条件;

例如:想查出员工张三的所在部门的地址

mysql> select a.addr from dept a inner join employee b on a.deptnu=b.deptnu and b.ename = '张三';
// 或者
mysql> select a.addr from dept a,employee b where a.deptnu=b.deptnu and b.ename = '张三';
联合查询:就是把多个查询语句的查询结果结合在一起

主要语法1:... UNION ...(去除重复)
主要语法2: ... UNION ALL ...(不去除重复)

*两个select语句的查询结果的“字段数"必须一致:
*通常,也应该让两个查询语句的字段类型具有一致性:
*也可以联合更多的查询结果:
*用到order by排序时,需要加上limit (加上最大条数就行),需要对子句用括号括起来

例如:对销售员的工资从低到高排序,而文员的工资从高到低排序

mysql> (select * from employee a where a.job = '销售员' order by a.sal asc limit 999999) union (select * from employee b where b.job = '文员' order by b.sal desc limit 999999);
上一篇下一篇

猜你喜欢

热点阅读