《深入浅出Mysql》——第二章 SQL基础

Posted JasonPeng1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《深入浅出Mysql》——第二章 SQL基础相关的知识,希望对你有一定的参考价值。

 

 

 

 

 

 

 

 

 

 

修改表名:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 在 mysql 中,update 命令可以同时更新多个表中数据,语法如下

 

注意:多表更新的语法更多地用在了根据一个表的字段,来动态的更新另外一个表的字段 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 例如,要 emp表中统计公司的总人数

 

 在此基础上,要统计各个部门的人数

 

 更细一些,既要统计各部门人数,又要统计总人数: 

 

 统计人数大于 1 人的部门:

 

 最后统计公司所有员工的薪水总额、最高和最低薪水: 

 

 

 

 当需要同时显示多个表中的字段时,就可以用表连接来实现这样的功能。 从大类上分,表连接分为内连接和外连接,它们之间的最主要区别是內连接仅选出两张表中 互相匹配的记录,而外连接会选出其他不匹配的记录。我们最常用的是内连接。 

 

 

 

 

 

 

左连接:

 

 此时两个表:

 

 右连接:

 

 

 

 

 

 例如,从 emp表中查询出所有部门在 dept 表中的所有记录: 

 

 

 如果子查询记录数唯一,还可以用=代替 in: 

 

 某些情况下,子查询可以转化为表连接,例如: 

转换为表连接后: 

 

 

 

 

 

 UNION 和 UNION ALL 的主要区别是 UNION ALL 是把结果集直接合并在一起,而 UNION 是将 UNION ALL 后的结果进行一次 DISTINCT,去除重复记录后的结果。 

来看下面例子,将 emp和 dept 表中的部门编号的集合显示出来: 

 

 

 

 

 

以上是关于《深入浅出Mysql》——第二章 SQL基础的主要内容,如果未能解决你的问题,请参考以下文章

《深入浅出MySQL》之SQL基础

吃透Js深入学习浅拷贝和深拷贝

深入浅出Java开发!java位运算求平均值

深入理解MySql事务

深入学习MySQL事务:ACID特性的实现原理

设计模式 5/23 原型模式