- 创建数据库:create database 数据库名;
- 查看数据库:show databases;
- 删除数据库:drop database 数据库名称;
- 切换数据库:use 数据库名;
- 查看正在使用的数据库:select database();
- 查看某个数据库的定义的信息:show create database 数据库名;
- 创建数据表格式:create table 表名(
字段名 类型(长度) 约束,
字段名 类型(长度) 约束
); - 主键约束:主键是用于标识当前记录的字段。它的特点是非空,唯一。
在开发中一般情况下主键是不具备任何含义,只是用于标识当前记录。 - 主键自动增长:一般主键是自增长的字段,不需要指定。
实现添加自增长语句,主键字段后加auto_increment(只适用MySQL) - 查看数据库中的所有表:show tables; 查看某个特定的表得先用use 拿到数据库,然后 desc 表名称
- 修改表 添加列:alter table 表名 add 列名 类型(长度) 约束;
- 修改表 修改列的类型长度及约束:alter table 表名 modify 列名 类型(长度) 约束;
- 修改表 修改列名:alter table 表名 change 旧列名 新列名 类型(长度) 约束;
- 修改表 删除列:alter table 表名 drop 列名; 修改表名:rename table 表名 to 新表名;
- 数据表添加数据:insert into 表 (列名1,列名2,列名3..) values (值1,值2,值3..);
- 添加数据格式,批量写入:insert into 表名 (列名1,列名2,列名3) values (值1,值2,值3),(值1,值2,值3)
- 更新数据:update 表名 set 字段名=值,字段名=值; update 表名 set 字段名=值,字段名=值 where 条件;
- 删除数据:delete from 表名 [where 条件]; 表数据清空:delete from 表名
- 删除表中所有记录使用delete from 表名; 还是用truncate table 表名;
删除方式:delete 一条一条删除,不清空auto_increment记录数。
truncate 直接将表删除,重新建表,auto_increment将置为零,从新开始。 - 数据的基本查询:select 字段1,字段2,...from 表名;
- distinct用于去除重复记录
select distinct 字段 from 表名; - 数据的条件查询:
- where条件的种类如下:
比较运算符
> < <= >= = <> ---------- 大于、小于、大于(小于)等于、不等于
BETWEEN ...AND... ----------- 显示在某一区间的值(含头含尾)
IN(set) -----------显示在in列表中的值,例:in(100,200)
LIKE 通配符 -----------模糊查询,Like语句中有两个通配符:
% 用来匹配多个字符;例first_name like ‘a%’;
_ 用来匹配一个字符。例first_name like ‘a_’;
IS NULL 判断是否为空
------------is null; 判断为空
is not null; 判断不为空
* D 逻辑运算符
and ------------ 多个条件同时成立
or ------------ 多个条件任一成立
not ------------ 不成立,例:where not(salary>100); - 排序查询 通过order by语句,可以将查询出的结果进行排序。放置在select语句的最后。
* SELECT * FROM 表名 ORDER BY 字段ASC;
* ASC 升序 (默认)
* DESC 降序 - 聚合函数 使用聚合函数查询是纵向查询,
它是对一列的值进行计算,然后返回一个单一的值;另外聚合函数会忽略空值。
* count:统计指定列不为NULL的记录行数;
* sum:计算指定列的数值和,如果指定列;
* max:计算指定列的最大值,如果指定列是字符串类型,那么使用字符串类型不是数值类型,那么计算结果为0排0 序运算;
* min:计算指定列的最小值,如果指定列是字符串类型,那么使用字符串排序运算;
* avg:计算指定列的平均值,如果指定列类型不是数值类型,那么计算结果为0; - 分组查询:* SELECT 字段1,字段2… FROM 表名 GROUP BY 字段 HAVING 条件;
* 分组操作中的having子语句,是用于在分组后对数据进行过滤的,作用类似于where条件。
* b: having与where的区别
* having是在分组后对数据进行过滤.
* where是在分组前对数据进行过滤
* having后面可以使用分组函数(统计函数)
* where后面不可以使用分组函数。