Mysql自学总结---多表

版权声明:转载说明出处,谢谢。 https://blog.csdn.net/Black_PL/article/details/82142085

1、表的连接查询:select xxx from A表名 join B表名 on 表的连接条件;

2、左连接 包含左边表的全部行(不管右边表中是否存在与他们匹配的行),以及右边表中全部匹配的行

      select xxx from A表名 left join B表名 on 表的连接条件;

      右连接 包含右边表的全部行(不管左边表中是否存在与他们匹配的行),以及左边表中全部匹配的行

      select xxx from A表名 right join B表名 on 表的连接条件;

3、任何一个右外连接都可写成左外连接,任何一个左外连接都可写成右外连接

4、多张表进行表连接的语法格式 select xxx from A表 join B表 on连接条件1 join C表 on 连接条件2

    原理:A表和B表通过连接条件1连接之后,A表再和C表通过连接条件2进行连接

5、将查询的结果集合并:查询语句1  union 查询语句2 ,合并结果集的时候查询字段个数必须相同

      // 查询字段类型在MySQL中不必完全相同,但是在Oracle中一定要类型也相同

6、limit 起始下标m,长度n m默认从0开始,表示第一条记录 n值从第m+1条开始取n条(limit只在mysql中有效)

7、表的复制:create table 表名 as select 查询语句

8、将查询结果插入到某张表中 insert into  表名 select 查询语句

9、now()获取数据库当前系统时间

10、典型的一对多设计中,在多的一方添加外键

数据库设计三范式

1、主键、字段不能再分

(1)每一行必须唯一,也就是每个表必须有主键

(2)关于列不可再分,需要视情况而定

2、非主键字段完全依赖主键(不能产生部分依赖)

3、非主键字段不能产生传递依赖于主键字段

班级名称字段依赖于班级编号,班级编号依赖于学生编号,那么这就是传递依赖

猜你喜欢

转载自blog.csdn.net/Black_PL/article/details/82142085