SQL概述 -DDL(Data Definition Language) 数据定义语言。用来操作数据库,表,列等。 create, drop, alter,truncate等 -DML(Data Manipulation Language) 数据操作语言。用来对数据库中表的数据进行增删改。 insert, delete, update DQL(Data QueryLanguage) 数据查询语言。用来查询数据库中表的记录(数据)。 select -DCL(Data Control Language) 数据控制语言。用来定义数据库的访问权限和安全级别,及创建用户。 grant,revoke -TCL(Transaction Control Language) 事务控制语 commit, savepoint, rollback 等
数据库 1.创建库 CREATE DATABASE 2.创建表 CREATE TABLE 表名( 字段 类型, 字段 类型 )
*增 1.增全部 insert into 表名 values (1, 2 , 3 ) 2.增指定 insert into 表名 (字段,字段,字段) values (1 , 2 ,3) 字段和值需要对应,varchar加引号
*删 1.根据条件删除 delete from 表名 where 条件 2.删除表 delete from 表名 3.重构删除表再创建 truncate 表名
*改 1.修改表的某个字段的值 update 表名 set 字段=值,字段=值 2.修改指定条件的某个字段的值 update 表名 字段=值,字段=值 WHERE 条件
*查 1.全表查询 select * from 表名 2.部分列查询 select 字段,字段 from 表名 3.别名查询 select 字段 别名 from 表名 4.去重查询 select distinct 字段 feom 表名 5.列计算 select 字段+5 from 表名
*运算符
, < , >= ,<= , = and && or || or和in : id=1 or id=2 或者 in(1,2) between: <=56,>=80 或者between 50 and 80 模糊查询: like % 匹配0和或多个 like_ 必须匹配一个字符
*排序 1.升序(默认) select * from 表名 order by 字段 asc; 2.降序 select * from 表名 order by 字段 desc;
*聚合 count 计数 sum求和 avg平均数 min最小 max最大 集合不允许出现在where后面
*分组 1.查询平均以什么字段分组 select 字段1,avg(字段) from 表名 group by 字段1. 2.查询平均以什么字段分组,筛选不符合条件的 select 字段1,avg(字段) from 表名 where 字段<50 group by 字段1 3.查询平均以什么字段分组,赛选不符合条件的,筛选小组 select 字段1,avg(字段) from 表名 where 字段<50 group by 字段1 hacing 平均分>66 4.查询平均以什么字段分组,赛选不符合条件的,筛选小组 最后小组统计排序 降序 select 字段1,avg(字段) from 表名 where 字段<50 group by 字段1 hacing 平均分>66 order by 平均成绩 desc
where和having区别: where:分组前使用 不允许接聚合 hacing:分组后使用 可以接聚合 必须匹配 group by
*分页 SELECT * FROM 表名 limit startIndex , pageSize (开始索引,每页展示个数) 例如 : limit 0,2 (从0索引展示两个)
limit达到分页的公式 开始索引的规律:(当前页数-1) * 每页显示的条数
*约束 1.主键约束: primary key auto_increment (自增) 唯一非空,可以设置自增 2.唯一约束: unique 保证数据在列中是唯一的 3.非空约束: not null 保证数据的添加不为空