[; \g \G] | 都表示语句结束, ;和\g效果一样, \G可以使结果显示更美观 |
delimiter 结束符号 | 更改结束符 |
SET NAMES GBK; | |
show database; | 显示所有数据库 |
show engines \G | 查看所支持的存储引擎 |
show variables like | ‘have%’; | 查看所支持的存储引擎 |
‘storage_engine%’; | 查询默认存储引擎 |
show warning; | 查看错误信息 |
help contents; | 查看帮助文档的目录列表 |
help <item>; | <item>查看对应的帮助文档 |
create database 库名; | 创建数据库 |
use 库名; | 选择数据库 |
drop database 库名; | 删除数据库 |
create table 表名(); | (属性名 数据类型 [约束], …)创建表 |
constraint 约束名 约束() | (属性名) 在创建表的时候用来设置约束及约束名 |
[constraint 约束名 ]primary key() | (属性名, 属性名, …) 设置多字段主键 |
constraint 约束名 foreign key (属性名1) references 表名(属性名2) | “属性名1”是字表中设置外键的字段名, 属性名2是父表中设置主键约束的字段名 |
[unique] index | key [索引名] () | (属性名 [(长度)] [asc | desc]) 创建[唯一]索引索引关联的字段 索引长度 升序|降序 |
fulltext index | key [索引名] () | (属性名 [(长度)] [asc | desc]) 创建全文索引 |
index | key [索引名]() | (属性名1 [(长度)] [asc | desc], …) 创建多列索引 |
create [unique] index 索引名 on 表(); | (属性名 [(长度)] [asc | desc]) 在已存在的表上创建[唯一]索引 |
create fulltext index 索引名 on 表(); | (属性名 [(长度)] [asc | desc]) 在已存在的表上创建全文索引 |
create index 索引名 on 表(); | (属性名1 [(长度)] [asc | desc], …) 在已存在的表上创建多列索引 |
desc[ribe] 表名; | 查看对应表对象定义的信息 |
show create table 表名; | 查看表详细定义 |
drop table 表名; | 删除表 |
drop index 索引名 on 表名; | 删除索引 |
alter table 表名 … (对表的一些操作) |
… rename [to] 表2; | 把表的名字改为表2 |
… add 属性名 类型; | 在表的最后增加字段 |
… add 属性名 类型 first; | 在表的第一个位置增加字段 |
… add 属性名 类型 after 属性名; | 在表的指定字段之后增加字段 |
… add [unique] index | key 索引名(); | (属性名 [(长度)] [asc | desc]) 创建[唯一]索引 |
… add fulltext index | key 索引名(); | (属性名 [(长度)] [asc | desc]) 创建全文索引 |
… add index | key 索引名(); | (属性名 [(长度)] [asc | desc]) 创建多列索引 |
… drop 属性名; | 删除字段 |
… modify 属性名 类型; | 修改字段的数据类型 |
… modify 属性名 类型 first; | 将字段调整到第一个位置 |
… modify 属性名 类型 after 名2; | 将字段调整到名2字段之后 |
… change 旧名 新名 旧[新]类型; | 修改字段的名字[或同时修改名字和属性] |
explain | P107 |
插入数据记录 |
insert into 表[(属性名, …)] values(); | (值, …), … 向表中添加数据 |
insert into 表(属性名, …) 查询语句; | 将查询结果插入表中 |
更新数据记录 |
update 表 set 属性名=值, … where ; | 更新表中满足条件的数据 |
删除数据记录 |
delete from 表 [where 条件]; | 删除表中[满足条件]的数据 |
单表数据记录查询 |
select [distinct] 属性名1, … from 表; | 查看表中对应字段(可用*号表示所有字段)[去重后]的数据 |
属性名 –> 属性名[+-*/%]数值 | 查询结果显示经过相应计算的结果 |
属性名 –> 属性名[ as] 新属性名 | 查询结果将显示新属性名 |
属性名 –> concat() 新属性名 | (属性名|字符串, …)将concat中的内容连接到一起输出为新属性 |
属性名 –> 统计函数() 新属性名, … | 统计行数: count(), avg(), sum(), max(), min() |
… where [not] 字段 条件; | 查询字段[不]满足某条件的数据记录 |
比较运算符: > < = !=(<>) >= <= 逻辑运算符: and(&&) or(||) xor(异或) not(!) |
[not] between 值1 and 值2; | [不]在值1和值2之间 |
is [not] null | [不]是空值 |
[not] in (值1, 值2, …) | [不]在集合中 (若集合中存在NULL, not in查不出任何结果) |
[not] like 字符串; | | 搜索与字符串(也可以是数据类型)[不]匹配的结果 |
“_” | 通配符, 该通配符值能匹配单个字符串 |
“%” | 通配符, 该通配符值可以匹配任意长度(0~n)的字符串 |
“%%” | 表示查询所有记录 |
… order by 字段 [asc|desc], …; | 查询结果按照字段进行[升序|降序]排序 |
… limit [初始偏移量, ] 显示行数; | 从第偏移量+1条数据开始显示相应行数 |
… group by 字段1, …; | 通过字段的值进行分组并显示每组的随机一条记录(一般配合函数)多字段会从左往右依次按照字段进行分组 |
… group by … having 条件; | 显示满足条件的分组后的数据 |
| |
| |
视图(5.0.1开始) |
create view 视图名 as 查询语句; | 创建视图 |
create or replace view 视图 as 查询; | 修改视图 |
alter view 视图名 as 查询语句; | 修改视图 |
show tables; | 查看表名和视图名 |
show create view 视图名; | 查看视图的定义信息 |
desc[ribe] 视图名 | 查看视图设计信息 |
drop view 视图名 [,视图2] | 删除一个或多个视图 |
show table status [from 库名] [like ‘表|视图’]; 显示数据库里表和视图的详细信息 |
返回参数的含义 | Name | 表和视图名 |
Engine | 表的存储引擎(4.1.2之前用Type表示) |
Version | 表的.frm文件的版本号 |
Row_format | 表的行存储格式 |
Rows | 表中行的数目 |
Avg_row_length | 表中行平均行长度 |
Data_length | 表数据文件的长度 |
Max_data_length | 表数据文件的最大长度 |
Index_length | 表索引文件的长度 |
Data_free | 表被整序后, 但是未使用的字节的数目 |
Auto_increment | 表中下一个AUTO_INCREMENT值 |
Create_time | 表的创建时间 |
Update_time | 表的最后一次更新时间 |
Check_time | 表的最后一次检查时间 |
Collation | 表的字符集 |
Checksum | 表的活性校验 |
Create_options | 表的额外选项 |
Comment | 表的注解 |
触发器(5及以上的版本) |
create trigger 触发器名 before | after 触发事件 on 操作表 for each row 触发器语句; |
before | after | 触发器事件之前 | 之后执行触发器语句 |
触发事件 | 即触发器执行条件, 包含delete、insert和update语句 |
操作表 | 操作后可能激活触发器的表 |
触发器语句 | 表示激活触发器后被执行的语句 |
begin 触发器语句1; … end; | 可通过begin … end 让触发器执行多条语句 |
show triggers; | 查看已存在的触发器的信息 |
返回参数 | Trigger | 触发器的名称 |
Event | 触发器的激活事件 |
Table | 触发器对象触发事件所操作的表 |
Statement | 触发器激活时所执行的语句 |
Timing | 触发器所执行的时间 |
select * from triggers [where …]; | 查看系统表triggers(提供触发器的所有详细信息)中的所有记录 |
drop trigger 触发器名 | 删除触发器 |