1. mysql数据库基本操作
- 启动停止mysql服务器:net start\stop mysql
- 连接mysql数据库:mysql -u root -h localhost -p password
2. mysql 存储引擎
- 查询mysql支持的存储引擎:show engines;
- innoDB存储引擎:倾向于事务处理的应用程序,频繁的更新、删除操作
- MyISAM存储引擎:查询速度快,空间和内存使用效率低
- MEMORY存储引擎:“内存”,存储速度快但安全性不高
3. mysql 基本操作
- 创建数据库:create database db_admin;
- 显示所有的数据库:show databases;
- 显示数据库中所有的表:show tables;
- 选择数据库:use db_admin;
- 删除数据库:drop database db_admin;
- 创建数据表:create table tb_new(id int primary key, name varchar(20));
- 查询表结构:show columns from tb_new; / describe tb_new;
- 修改表结构:alter table tb_new add email varchar(30), add adress varchar(50); // 可以是modify\drop\change
- 重命名表:rename table tb_new to tb_fredric;
- 插入记录:insert into tb_1(id,name) values(1,'fredric');
- 查询记录:select * from tb_1 where id = 1;
- 修改记录:update tb_1 set name = 'sinny' where id = 1;
4. mysql 数据查询
- 查询指定字段:select name, emai from tb_1;
- 查询指定数据:select * from tb_1 where name = 'sinny';
- IN 关键字:select * from tb_1 where id IN(2,3);
- BETWEEN AND 关键字:select * from tb_1 where id between 1 and 2;
- 多条件查询:select * from tb_1 where id = 1 and/or name = 'sinny';
- LIMIT限制:select * from tb_1 limit 2;
- 函数:select sum(id) from tb_1; 返回结果为sum(id),即id的和
- 内连接查询:select name,book from tb_1,tb_2 where tb_1.id = tb_2.id;
- 左/右连接查询:select name,book from tb_1 left/right join tb_2 on tb_1.id = tb_2.id; //left/right分别表示以tb_1还是tb_2为主,空余字段填充null;
- 带IN子查询:select * from tb_1 where id in(select id from tb_2); //子查询select的列需要对应
- 带比较运算符的子查询:select * from tb_1 where id >(select id from tb_2); //ANY/ALL 关键字表示满足子查询的一个还是全部条件
- 合并:select id from tb_1 union select id from tb_2; //union all的话不忽略重复项
5. mysql函数
- 数学函数:ABS、CEIL、FLOOR等;
- 字符串函数:LENGTH、CONTACT等;
- 日期和时间函数:NOW、CURTIME等;
- 条件判断函数:IF、CASE等
- 系统信息函数:VERSION等
6. mysql 查询优化
- 分析查询情况:explain select * from tb_1;
- 创建索引:create index index_id on tb_1(id);
- 删除索引:drop index index_id on tb_1;
- 高速缓存:mysql中用户select查询语句后,操作结果将保存到缓存中;
- 临时表:create temporary table tb_temp(id int primary key, name varchar(20));//临时表的生命周期在用户结束于数据库的会话时结束,操作与table一致;
7. mysql 索引
- 普通索引:
- 唯一索引:索引值唯一,主键是特殊的唯一索引
- 全文索引:TBD
- 单列索引:TBD
- 多列索引:TBD
- 空间索引:TBD
8. mysql 视图
- 创建视图:create view tb_view(name,email) as select name,email from tb_1;
- 查看视图:describe tb_view;
- 修改视图:alter view tb_view(name) as select name from tb_1;
- 查看视图数据:select * from tb_view;// tb_view类似于临时表,但视图只保存表的结构不存储数据
- 更新视图:update tb_view set name = 'new fredric' where name = 'fredric';//原表中的数据也会被修改
- 删除视图:drop view if exists tb_view;
来源:https://www.cnblogs.com/Fredric-2013/archive/2013/04/15/3022846.html