1 基本,引擎,数据类型,运算
1.1 基本操作
启动:net start mysql
停止:net stop mysql
连接: mysql –uroot -h127.0.0.1 -proot
断开连接:quit; 或 exit;
查询支持的存储引擎:show engines; 或 show variables like ‘have%’;
cmd中文乱码:指定客户端编码,和返回结果编码
set character_set_client=gbk;
set character_set_results=gbk;
1.2 存储引擎
InnoDB: 优点:事务、回滚、崩溃修复、并发控制。 缺点:读写效率稍差,占用数据空间相对较大
MyISAM: 优点:占用空间小、处理速度快。缺点:不支持事务和并发。
MEMORY: 特点:内存上,能存释放就没了 优点:速度快 缺点:容量有限,生命周期短
1.3 数据类型
数字类型:tinyint bit bool smallint mediumint int bigint float double decimal
字符串类型:char varchar text blob set enum
日期和时间:date time datetime timestamp year
1.4 运算符
算术运算符:+, -, *, /
比较运算符:=, >, <, >=, <=, !=或<>, is null, between and, in, like, regexp
逻辑运算符:&&或and, ||或or, !或not, xor
位运算符:&, |, ~, ^, <<, >>
2 mysql基本操作
2.1 数据库操作
创建: create database 数据库名;
查看: show databases;
选择: use 数据库名;
删除: drop database 数据库名;
2.2 数据库表操作
2.2.1 建表
create [temporary] table [if not exists] 表名 [(create_definition,…)] [table_options] [select_statement]
create_definition格式:
col_name type [not null | null] [default default_value] [auto_increament] [primary key] [reference_definition]
2.2.2 查看表结构
show [FULL] columns from 数据库名.表名;
看整个表:desc 表名;
看一个字段:desc 表名 列名;
2.2.3 修改表结构
alter[ignore] table 表名 alter_spec[,alter_spec]…
alter_specification格式:
alter_specification:
add [column] create_definition [first | after column_name] // 添加新字段
| add index [index_name] (index_col_name,…) // 添加索引名称
| add primary key (index_col_name,…) // 添加主键名称
| add unique [index_name] (index_col_name,…) // 添加唯一索引
| alter [column] col_name {set default literal | drop default} // 修改字段名称
| change [column] old_col_name create_definition // 修改字段类型
| modify [column] create_difinition // 修改子句定义字段
| drop [column] col_name // 删除字段名称
| drop primary key // 删除主键名称
| drop index index_name // 删除索引名称
| rename [as] new_tbl_name // 更改表名
| table_options
重命名表:rename talbe 原表名 to 新表名;
删除表:drop table 表名; 或者 drop table if exists 表名;
2.3 mysql语句操作
2.3.1 插入
insert into 表名(column_name1,column_name2,…) values(value1,value2,…)
2.3.2 查询
select [distinct] [concat(col 1, “:”, col 2) as col] selection_list // 内容
from 表名 // 数据表
where primary_constraint // 条件
group by grouping_columns // 分组
order by sorting_columns // 排序
having secondary_constraint // 查询时满足的第二条件
limit count // 限定输出的查询结果
说明:
distinct 去除重复的行
group by 配合聚合函数使用很爽
order by sorting_columns desc 降序
like 模糊查询
concat 拼接字段
limit 限定结果行数
聚合函数:arg count min max std stdev sum
2.3.3 修改
update 表名 set column_name1=new_value1,column_name2=new_value2,…
2.3.4 删除
delete from 表名 where condition
3 mysql的函数
1 数学函数
2 字符串函数
3 时间和日期函数
4 条件判断函数
5 系统信息函数
6 加密哈数
7 其他函数
4 mysql数据查询
4.1 基本查询
select selection_list
from 表名
where primary_constraint
group by grouping_columns
order by sorting_columns
having secondary_constraint
limit count
查询中常用的关键词:in, between and, like, is [not] null, and, or, distinct, order by, group by, limit,
4.2 连接查询
---------------------