数据库操作
增加数据库 create database 库名; 删除数据库 drop database 库名; 修改数据库字符集 alter database 库名 character set utf8; 修改数据库字符集 查询数据库
show database; 查询所有数据库 show create database 库名 ; 查询某一个数据库
表操作
主键约束: primary key 非空约束: not null 唯一约束: unique 外键约束: foreign key
创建表 create table 表名( 列名 数据类型 primary key(主键约束), 列名 数据类型 not null(非空约束), 列名 数据类型 unique(唯一约束), 列名 数据类型 foreign key(外键约束), ...... );
删除表 drop table 表名; 修改表 alter table 表名; 查询表 show table ; 查询所有表名称 desc 表名 ; 查询表结构 数据操作 增 insert into 表名(列名1,列名2,列名3,.....)values(值1,值2,值3,......); 删 delete from 表名 where 条件 ; 改 update 表名 set 列名1= 值 , 列名2=值 where 条件 ; 查 select 列名 from 表名 where 条件 ;
查询的命令模板
select 列名 distinct 筛选
count (*)计算个数 AVG 平均数 SUM 求和 MAX 最大 MIN 最小 from 表名 where group by 列名 分组 having 条件 分组之后的条件 order by 列名 ASC/DESC 排序 ASC/DESC 升序/降序 limit 0,3 分页 查询3条数据 列名 between and 在什么之间 列名 in(1,2,3,4) 查询具体数据1,2,3,4对应的数据 is null 查询的数据为空 is not null 查询的数据不为空 列名 like '赵%' 第一位为赵的数据 like '_诗%' 查询第二位为诗的数据 like '_ _ _' 查询数据为3位的数据 like '%思%' 查询 包含思的数据
AND 优先级 高于 OR and and是与关系,两边有必须全部为真 or or是或关系,就是两边有一个是真就行 not 内连接 隐式内连接 select t.列1,t.列2,s.列3 from 表1 t 表2 s where 条件 t.id = s.id 显示内连接 select 列 名 from 表名1 inner join 表名2 on 条件;
外连接
左外连接 select 列名 from 表1 left join 表名2 on 条件; 右外连接 select 列名 from 表1 right join 表名2 on 条件; 子查询 1,使用运算符 > >= <= < = select 列名 from 表名 where 列名 > (select 列名 from 表名 where 条件); 2.使用子查询作为一张虚拟的表
select t1.列名 ,t2.列名 from t1,(select 列名from表名 where 条件)t2 where 条件 ; 3.使用子查询作为条件 select 列名 from 表名 where id in (select 列名 from 表名 where 条件);