第二周--MySQL学习

  • 四大基本操作
    • 1.1 增
      • 1.1.1 新建数据库
      • 1.1.2新建表
      • 1.1.3插入新数据
    • 1.2 删
      • 1.2.1 删除数据库
      • 1.2.2 删除数据表
      • 1.2.3 删除数据
    • 1.3 改
      • 1.3.1 更新数据
    • 1.4 查
      • 1.4.1 基础查询
      • 1.4.2 条件查询
      • 1.4.3 限制查询
      • 1.4.4 排序查询
      • 1.4.5 分组/去重查询
      • 1.4.6 子查询
      • 1.4.7 多表联查
    • 1.5 常用方法
      • 1.5.1 distinct 去重
      • 1.5.2 as 别名
      • 1.5.3 聚合函数

四大基本操作

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()

软件测试学习第二周--MySQL相关推荐

  1. 深入理解吴恩达老师深度学习课程(01神经网络和深度学习 第二周)

    深入理解吴恩达深度学习(01神经网络和深度学习 第二周) 1引言 2.1 二分类(Binary Classification) 2.1.1 符号定义(视频给出的) 2.2 逻辑回归(Logistic ...

  2. java学习第二周周记

    JAVA学习第二周周记 **day1.**流程控制语句 ,跳转控制语句 **day2.**什么是方法?方法的重载 **day3.**数组,栈和队列 **day4.**冒泡排序及对象的引入 **day5 ...

  3. Python学习第二周总结

    Python学习第二周总结 ​ 第二周主要学了python中几种常见的数据结构,分别是列表.元组.字符串.集合.字典重点就是怎么创建和使用这些数据结构,操作方法更是一定要掌握的. 一.列表 1.1 定 ...

  4. 吴恩达深度学习第二周--logistic回归作业1

    吴恩达深度学习第二周–logistic回归作业1 本系列为吴恩达老师深度学习作业的总结,其中参考了很多优秀的文章,本文为了方便日后的复习与巩固,更为详细的作业讲解参考 目录 吴恩达深度学习第二周--l ...

  5. 吴恩达深度学习第二周+二分类应用+猫图片识别

    由于最近在看吴恩达老师深度学习的课程,在第二周有一个关于猫图片识别的习题,下面将自己的一些体会和代码分享. 有关数据集的下载可以自行百度. 下载好数据集之后会发现是一个.h5的文件.所以我们首先导入 ...

  6. Java学习---第二周周报

    第二周周报 收获 关于第一周知识的查漏补缺 JDK,JRE,JVM 分别是什么,彼此之间的关系是怎么样的? JDK为Java语言的软件开发工具包,是整个Java的核心:包含JRE和JVM JVM是Ja ...

  7. python编程学习——第二周

    第二周 python学习笔记和做的一些习题 (python编程快速上手--让繁琐工作自动化) 第四章节 列表 列表数据类型 "列表"是一个值,它包含多个字构成的序列. 列表中的值成 ...

  8. PaddlePaddle课程学习第二周笔记

    本周主要学习了手写数字识别以及深度学习五个步骤的具体实现方法和优化 深度学习五个步骤的具体实现方法和优化 数据集处理 读入数据并划分数据集 train_set(训练集):用于确定模型参数. val_s ...

  9. Java学习第二周(2)--排序算法与二维数组

    声明:由于学习环境为JDK1.8,所有有关Java的代码均在JDK1.8环境中测试通过,若环境发生变换,代码可能会发生错误.     本周的学习难度较上周有明显提升,今天所学习的排序算法有很多需要理解 ...

最新文章

  1. 600 imp oracle_oracle中exp,imp的使用详解
  2. 科学•转化医学 | 中国科大发现NK细胞促进胚胎发育的转录调控新机制
  3. 无法获取计算机名,Spring Cloud常见问题之:无法注册主机名
  4. 水晶报表基础入门——4.水晶报表排序、分组技术
  5. 机器学习基石 作业三
  6. UVA - 10066 The Twin Towers
  7. 计算机网络(HTTP协议 与 HTTPS)
  8. img标签图片居中显示
  9. pygame飞扬小鸟_飞翔小鸟游戏_李兴球版
  10. VUE之多元素组件过渡+动画封装
  11. 程序员 2015 年工作总结
  12. 腾讯云OCR文字识别的使用
  13. 青春无悔―追忆10年前的那场校园民谣
  14. Matlab建模—回归拟合(ployfit与regress使用)
  15. 云服务,云服务商比较
  16. 解决IE浏览器处理返回JSON数据提示下载问题
  17. 手机网页应用的交互设计
  18. MERGER INTO语法
  19. Selenium WebDriver下载安装
  20. Java里子类调用父类构造方法问题

热门文章

  1. Spring Clound项目打包发布到centos7
  2. vs2008 MFC使用DataGrid控件绑定数据库
  3. Android10.0 版本兼容
  4. keil 5.35 淘宝版ST-LINK/V2无法升级问题
  5. 钟南山给青岛小学生回亲笔信,信里说了什么?
  6. Cesium 全球数据图表统计
  7. 怎么在windows服务器上传文件,windows服务器文件上传
  8. 2023最新阿里、腾讯、华为、字节等大厂的薪资和职级对比
  9. V360推出首款移动端VR视频编辑软件,用手机就可编辑360度全景视频
  10. python如何使用sdk_Python实现海康威视SDK二次开发-1