软件测试学习第二周--MySQL

四大基本操作

1.1 增

1.1.1 新建数据库

英文单词:

​ create 创建 default 默认 charset 字符集(编码)

-- 创建数据库
create database 数据库名;

-- 创建数据库,默认编码为uft8
create database 数据库名 default charset utf8;

1.1.2新建表

-- 新建数据表
create table 表名(列名 数据类型,列名2 数据类型,列名3 数据类型);

常用数据类型:

​ int 整型 float 浮点型 varchar 字符型 datetime 日期类型

​ 字符型必须限制长度

1.1.3插入新数据

英文单词:

​ insert 插入 添加 into 到…里面 values 值

-- 添加一行数据
insert into 表名 values(值1,值2,值3...);

-- 添加多行数据
insert into 表名 values(值1,值2,值3...),(值1,值2,值3...),(值1,值2,值3...)...;

1.2 删

1.2.1 删除数据库

英文单词:

​ database 数据库 drop 删除

-- 删除数据库
drop database 数据库名;

1.2.2 删除数据表

drop table 表名;

1.2.3 删除数据

-- 删除某一行	
delete from 表名 where 条件

-- 删除所有数据
select * from class;

1.3 改

1.3.1 更新数据

英文单词:

​ update 更新,修改 set 设置

-- 修改某个值
update 表名 set 列名='修改值' where 条件

-- 修改多个值
update 表名 set 列名='修改值',列名2='修改值',列名3='修改值' where 条件

1.4 查

1.4.1 基础查询

英文单词:

​ select 筛选、查询 from 来自

-- 查询某一列数据	
select 列名 from 表名

-- 查询多列数据
select 列名,列名2,列名3 from 表名

-- 查询所有数据
select * from 表名

1.4.2 条件查询

英文单词:

​ where 哪里 between 在什么之间 in 在什么里面 like 像 null 空

-- 根据列名的值进行查询
select 列名 from 表名 where 列名=“值”;

-- 查询在区间数值1到数值2内的数据
select 列名 from 表名 where 列名 between 数值1 and 数值2

-- 查询值等于数值1或数值2的数据
select 列名 from 表名 where 列名 in(数值1,数值2);
-- 同时满足2个条件
select 列名 from 表名 where 条件1 and 条件2

-- 满足任一条件都要
select 列名 from 表名 where 条件1 or 条件2

-- 不满足某一条件
select 列名 from 表名 where not(条件)

-- 多个条件后面接着加and或者or
select 列名 from 表名 where 条件1 and 条件2 and 条件3
select 列名 from 表名 where 条件1 or 条件2 or 条件3
-- 查找数据包含内容二字的数据
select 列名 from 表名 where 列名 like '%内容%'

-- 查询名字为三个字的人名
select 列名 from 表名 where name like '___';
-- 列为空数据
select 列名 from 表名 where 列名 is null;

-- 列为不为空数据
select 列名 from 表名 where 列名 is not null;

-- 列为字符串空数据
select 列名 from 表名 where 列名='';

​ 比较运算符:

​ =,>,<,>=,<= ,!= (!不), <> 不等于

​ between… and… 在什么区间

​ not between… and… 不在什么区间

​ in(数值,数值2) 在什么里面

​ not in(数值,数值2) 不在什么里面

​ 逻辑运算符:

​ and:要同时满足多个条件,交集

​ or:或者,满足任一条件都要(小孩子才做选择,or全都要),没有交集,并且两个都要,用or

​ not:取反

​ 模糊查询:

​ like 模糊

​ not like 模糊取反

​ % 代表不确定多少位数的值

​ _ 占位符,代表一位字符

​ (确定位数,使用_占位符;不确定位数,用%)

​ 空查询:

​ null 空,基本任一类型都可以使用。注意不需要加引号

​ null和‘’ 都是代表空数据

​ (null:基本任一类型都可以使用,等于null得用is null;用在字符型里面,等于空数据得用=‘’)

1.4.3 限制查询

英文单词:

​ limit 限制

-- 查询前n行数据,limit放在sql语句的最后
select 列名 from 表名 limit n;

-- 从m+1条开始开始拿,往后拿n条数据,第一条数据m=0
select 列名 from 表名 limit m,n;

1.4.4 排序查询

英文单词:

​ order 顺序 by 根据 asc 升序/正序 desc 降序/倒序

-- 升序查询,asc不写,默认为升序
select 列名 from 表名 order by 列名 asc;

-- 降序查询
select 列名 from 表名 order by 列名 desc;

1.4.5 分组/去重查询

英文单词;

​ group 组 by 根据

-- 根据某一列去重
select 列名 from 表名 group by 列名

-- 分组后的再次过滤,where分组前过滤,having分组后过滤
select 列名 from 表名 where 条件 group by 列名 having 条件

1.4.6 子查询

-- 查询和徐蔡坤相同学号的所有名字
select name from class where id=(select id from class where name='徐蔡坤');

​ 子查询,通过括号括起来,里面写完整的sql语句,子查询会优先执行

​ 子查询可以当值用,也可以当表用;子查询当表用,必须要有别名;子查询当值用,一个值就用=,多个值用 in

1.4.7 多表联查

英文单词:

​ join 连接 on 在…之上

-- 内连接 inner join on
select 列名 from 左表 inner join 右表 on 左表.列名=右表.列名;
-- 左连接 left join on / left outer join on
select 列名 from 左表 left join 右表 on 左表.列名=右表.列名;
-- 右连接 right join on / right outer join on
select 列名 from 左表 left join 右表 on 左表.列名=右表.列名;

​ 内连接:

​ 两个表的交集部分,只返回两张表相同的记录

​ 左连接(左外连接):

​ 左表的记录将会全部表示出来,而右表(b_table)只会显示符合搜索条件的记录。右表记录不足的地方均为NULL。

​ 右连接(右外连接):

​ 与左(外)连接相反,右(外)连接,左表只会显示符合搜索条件的记录,而右表的记录将会全部表示出来。左表记录不足的地方均为NULL。

​ 连接条件:

​ 相同的列名

1.5 常用方法

1.5.1 distinct 去重

英文单词:

​ distinct 去重

-- 根据某一列去重,只能去重一列
select distinct(列名) from 表名

1.5.2 as 别名

英文单词:

​ as 作为

-- 某一个列名进行别名
select 列名 as '别名' from 表名

1.5.3 聚合函数

英文单词:

​ max 最大 min 最小 average 平均 sum 总和 count 总行数

-- 聚合函数基本格式,统计某一列的数据,返回一个值
select 聚合函数(列名) from 表名;

​ 最大值:max()

​ 最小值:min()

​ 平均值:avg()

​ 求和:sum()

​ 总行数:count()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值