数据库的备份和还原
- 命令行
- 备份语法:mysqldump -u用户 -p密码 数据库名称 > 保存的路径
- 还原语法:
- 登录数据库
- 创建数据库
- 使用数据库
- 执行文件。source 文件路径
- 图形化工具
数据库操作
多表查询
- 查询语法:select 列名列表 from 表名列表 where …
- 多表查询分类:
- 内连接查询:
- 隐式内连接:使用where条件来消除无用条件
- 显式内连接:
- 语法:select 字段列表 from 表名1 inner join 表名2 on 条件
- 注意事项
- 从哪些表中查询数据
- 条件是什么
- 查询哪些字段
- 外连接查询
- 左外链接
- 语法:select 字段列表 from 表1left outer join 表2 on 条件
- 查询的是左表所有数据及其交集部分。
- 右外连接
- 语法:select 字段列表 from 表1right outer join 表2 on 条件
- 查询的是右表的所有数据及其交集部分
- 左外链接
- 子查询
- 概念:查询中嵌套查询,称嵌套查询为子查询。
- 不同情况:
- 子查询的结果是单行单列的:
- 子查询可以作为条件,使用运算符做判断
- 子查询的结果是多行单列的:
- 子查询可以作为条件,使用运算符in来判断
- 子查询的结果是多行多列的:
- 子查询可以作为一张虚拟表来进行多表查询
- 子查询的结果是单行单列的:
- 内连接查询:
- 笛卡尔积:有两个集合A,B,取这两个集合的所有组成情况。要完成多表查询,需要消除多表笛卡尔积中的无用数据。