首页 > 数据库 >MySQL 期末总结

MySQL 期末总结

时间:2024-01-31 21:34:15浏览次数:29  
标签:总结 -- 约束 字段 期末 MySQL table null 主键

MYSQL

一、对表结构进行操作

1.主键

1)添加主键

-- 1. 主键
/*
	方式一: 创建表的时候在字段后面 +  primary key
	方式二: 写完字段之后在指定主键, 创建标的字段下面  
			[constraint <约束名>]  primary key
*/

use mydb1;

create table emp1(
	eid int,
	ename varchar(20),
	deptId int,
	salary double,
	constraint pk1 primary key(eid) --  constraint  pk1  可以省略
)

insert into emp1(eid, name, deptId, salary) values(1001,"张三",001,5000.0);
																								  	
-- 2. 联合主键	
-- 主键由一张表中的多个字段组成
-- 一张表只能有一个主键, 联合主键也是主键
-- 相应的格式如下
create table emp2(
	eid char(4),
	ename varchar(20),
	salary double,
	constraint pk2 primary key(eid, ename)   -- constraint pk2  可以省略
)

2)删除主键

一个表不需要主键约束的时候将主键从表中删除

单列主键和联合主键都可以用它删除

alter table <数据表名> drop primary key;

2.自增长约束 auto_increment

当主键被定义自增长之后,这个主键就不要用户在输入数据了,而是由操作系统根据定义自动赋值,没增加一条记录,主键会自动一相同的步长增长

在创建表的时候

字段 数据类型 auto_increment

  1. 默认情况下 auto_increment 的初值为 1,每增加一条记录,字段值自动 + 1

  2. 一个表中只能有一个字段使用自增长约束,且该字段必须有唯一索引,以避免序号重复(即为主键或者主键的一部分)

  3. 自增长约束字段必须非空 即 not null

  4. auto_incredment 只能是整数类型

  5. 约束字段的最大值受该字段的数据类型约束,如果达到上限 , auto_incredment 就会失效

3.非空约束 not null

在创建表的时候指定 字段名 数据类型 not null

创建表时候用 alter 再去指定 alter table 表名 modify 字段 类型 not null

4.唯一约束 unique

唯一约束是指定所有记录中的字段不能重复出现

在创建表的时候指定 字段名 数据类型 unique

创建表之后再去指定 alter table 表名 add constraint 约束名 unique(列)

5.默认约束

MYSQL 的默认约束用来指定某列的默认值

在创建表的时候添加 字段名 数据类型 default 默认值

创建表之后用 alter 进行 alter table 表名 modify 列名 类型 default 默认值

6.零填充约束(zerofill)

插入数据时,该字段的额长度小于定义的长度时,就会在该字段补上相应 0

zerofill 默认值是 int(0)

当时用 zerofill 时,默认会追加 unsigned(无符号)属性,使用 unsigned 之后,数值范围是原来的值的 2 倍

create table t_user(
	id int zerofill, -- 零填充
    name varchar(20)
)

-- 删除
alter table t_user modify id int;

-- 插入一条数据看看效果
insert into t_user values(1, "张三");

image-20231205222105844

7.约束总结

二、DQL

1.基本的查询小左

2.运算符

算数运算符 说明
+ 加法运算
- 减法运算
* 乘法运算
/ 或 DIV 除法运算,返回商
% 或 MOD 求余运算,返回余数

image-20231205223656673

image-20231205223751102

算数运算之后要起别名

3.模糊查询

1) like

% : 表示任意多个字符

_ : 表示一个字符

4.排序查询

order by 用到这个关键字

select
	字段1, 字段2....
from 表名
order by 字段 [asc | desc], 字段2 [asc | desc].....

asc 表示升序 desc 表示降序 默认是 升序

order by 用在字句中可以支持 任意个字段, 表达式, 函数, 别名

order by 放在查询语句最后面, LIMIT 除外

5.聚合查询

image-20231205225721556

聚合查询对 null 的处理

1) count 函数

​ 如果 count 函数的参数为 * ,则统计所有的记录个数

2) sum 和 avg 对 null 的处理

​ 忽略 null 的存在,就好像该记录不存在

3) max 和 min 同样忽略 null 的存在

6.分组查询

select 字段1, 字段2,.... from 表名 group by 分组字段 having 分组条件;

如果需要进行分组的话, select 后面只能出现分组字段, 和 聚合函数

分组之后的条件筛选 having

  1. 分组之后如果需要对条件进行筛选必须使用 having
select 字段....
from ....
where ....
group ...
having ....

7.分页查询

分页查询在项目开发中常见,由于数据量 大, 显示屏长度有限,因此对数据采用分页显示的方式

列如:每一页显示 5 条,第一页显示 1~5, 第二页显示 6 ~ 10

-- 方式一    显示前 n 条
select 字段... from 表名 limit n;

-- 方式二  
select 字段.... from 表名 limit m, n;
-- m : 整数, 表示从 第几条索引开始  计算方式 (当前页面 - 1) * 每页显示的条数
-- n : 整数  表示查询多少条数据

标签:总结,--,约束,字段,期末,MySQL,table,null,主键
From: https://www.cnblogs.com/tomlove/p/18000162

相关文章

  • 1.31寒假每日总结22
    1)NLP基本概念①NLP(NaturalLanguageProcessing),也就是人们常说的「自然语言处理」,就是研究如何让计算机读懂人类语言,即将人的自然语言转换为计算机可以阅读的指令。②分词是NLP任务的一个起始,分词的好坏会影响整体模型的好坏。并且分词不一样,语义不一样。1. 中国北京大......
  • 李宏毅《机器学习》总结 - 2022 HW3(图像识别、CNN) Strong Baseline
    调参调吐了。。最好做到了private0.82/public0.808这题前前后后做了五天。。主要是后来train一次就得花很长很长时间,我的kaggle余额也用的差不多了。。这个题目大概就是给你11种食物的图片,让你学习,并分类CNN处理图片就先转化成\(128\times128\)个pixel,然后做......
  • seatunnel-2.3.3测试excel入库mysql
    1.背景客户需要excel导入功能,同时支持导入多种数据源,尝试用seatunnel数据集成工具来实现。2.步骤2.1配置文件./config/v2.excel2mysql.configenv{#YoucansetSeaTunnelenvironmentconfigurationhereexecution.parallelism=1job.mode="BATCH"}source......
  • 数据库MySQL8.0.29安装与备份||了解和掌握MySQL的安装和简单使用和备份数据
    内容:了解和掌握MySQL的安装和简单使用:(1) 了解安装MySQL的软硬件环境和安装方法;(2) 熟悉MySQL的相关基本使用;(3) 熟悉MySQL的构成和相关工具;(4) 通过MySQL的使用来理解数据库系统的基本概念。要求:1. 在微机上安装MySQL数据库系统,为后续实验搭建实验环境,提供前期准备;2. 完成实......
  • Mysql中索引的描述设计
    Mysql中索引的描述设计1,索引是占用存储空间的2,my_myisam.myi和account.ibd存放索引3,查询效率提高,增删改效率降低;索引表以查询为主索引结构 二叉树结构一个根节点下只能有两个节点,当子节点比根节点小在左侧,当比根节点大在二叉树右侧缺点:大数据量时,检索慢,如果都比根节点小会......
  • 数论总结_同余相关
    贰.与数论函数联系不大的东西二.定理费马小定理&欧拉定理若\(p\)为质数且\(a\not\equiv0\pmodp\),则\(a^{p-1}\equiv1\pmodp\).若\(\gcd(a,m)=1\),则\(a^{\varphi(m)}\equiv1\pmodm\).三.算法1.欧几里得相关求\(\gcd\)\[\gcd(a,b)=\begin{cases}a&b......
  • MySQL介绍
    数据库的由来和基本概念什么是数据库?|Oracle中国【一】数据的发展史早期未出现互联网前,每个人都只可以在本地存储,且存储的数据格式都是根据每个人的需要自由定义的出现网络后,可以在局域网内进行多台计算机的数据共享,而这时,数据的格式只能由人为约束,约定俗成好一套数据存......
  • 不移其志,踏浪前行 | 北京智和信通召开2023年度工作总结大会
    岁聿云暮,新元肇启,2024年1月24日,北京智和信通技术有限公司(以下简称“北京智和信通”)召开2023年度年终总结大会。会上,各部门负责人全面分析公司业务发展态势,各部门员工依次汇报主要工作情况,深入剖析存在问题,并提出2024年工作开展思路。公司领导充分肯定2023年各部门在产品迭代、市......
  • Unity引擎2D游戏开发,滑铲功能实现总结
    滑铲到悬崖边下落时无法取消动画由于是使用的协程方式实现,所以当滑铲到悬崖边的时候,不能使用yieldbreak,因为该指令会直接退出当前的协程方法,无法执行到isSlide=false指令privateIEnumeratorTriggerSlide(Vector3target){do{yieldreturnnull;......
  • Mysql中存储引擎InnoDB,MyISAM,MEMORY比较
    Mysql中存储引擎InnoDB,MyISAM,MEMORY比较showENGINES--查看数据库支持的搜索引擎ENGINE=InnoDB--使用的InnoDB引擎CREATETABLE`user1`(`id`bigint(20)NOTNULLDEFAULT'0',`name`varchar(255)DEFAULTNULL,`age`int(11)DEFAULTNULL,`sex`varchar(255)......