![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MYSQL
zbossz
现在我的栏目很适合对应找知识点进行学习
展开
-
【MySQL】子查询,in ,exists(详解)
首先我们创建4张表:现在我们用没有任何关键字的子查询来做到一下一点:我们通过一个叫z1的同学找到她的班级然后通过她的班级Id找到她的班级名。下面我们来编写代码:mysql> select className from class where classId = -> (select studentClassId from student where studentName = 'z1');+-----------+| className |+-----------+|原创 2022-03-01 11:45:20 · 6409 阅读 · 0 评论 -
【MySQL】union all 合并查询(详解)
首先我们要知道,union 和union all的区别。union是去重合并,union all不去重合并。首先合并的前提是2个表合并的内容的列的类型是一样的。下面我们来设计2张表:mysql> select * from student union -> select * from bookshelf where bookId <3;+------+----------------+| id | name |+------+--------原创 2022-02-28 21:07:03 · 6212 阅读 · 0 评论 -
【MySQL】内连接,外连接,自连接(详解)
首先,内连接可以用表1 join 表2on 条件 或表1 别名1 join 表2 别名2 on 条件也可以用from表1,表2我们首先先来创建2张表:然后我们来理解一下内连接,外连接:下面是内连接mysql> select student.name,class.className from student join class on student.classId = class.classId;+------+-----------+| name | className |+---原创 2022-02-28 15:02:44 · 3768 阅读 · 4 评论 -
【MySQL】笛卡尔积-多表查询(详解)
我们通常在使用数据库的时候,是不可能只查一张表的,当我们要联合多张表进行查询的时候,我们就要进行多表查询。下面我们来设计相互关联的4张表:那么我们现在通过笛卡尔积来查询z1同学模拟电路与数字电路的分数:mysql> select * from class,course,score,student where student.studentId = score.studentId and course.courseId = score.courseId -> and class.c原创 2022-02-28 13:20:03 · 1313 阅读 · 0 评论 -
【MySQL】select,having和where的区别(详解)
含义上来说,其实having和where的意思是相同的。但是,having处理的是聚合后的表。而where处理的是聚合前的表。下面我们来举个例子。首先我们创建了一张表:mysql> select * from salary;+----+------+-------------------+------------+| id | name | pay_for_per_month | position |+----+------+-------------------+--------原创 2022-02-27 21:48:30 · 670 阅读 · 0 评论 -
【MySQL】select,group by聚合查询用法-进阶(详解)
group by其实是以行为运算的,就是联合的是行,而不是列,下面我们来举个例子:mysql> create table salary (id int primary key auto_increment,name varchar(20),pay_for_per_month int,position varchar(20));Query OK, 0 rows affected (0.03 sec)mysql> desc salary -> ;+--------------原创 2022-02-27 21:25:39 · 1561 阅读 · 0 评论 -
【MySQL】select聚合查询用法(详解)
原创 2022-02-27 21:02:04 · 424 阅读 · 0 评论 -
【MySQL】insert into 和select 搭配使用进行表间复制
首先这只是一个用法:下面是演示。首先我们准备2张表:mysql> use z1;Database changedmysql> show tables;+--------------+| Tables_in_z1 |+--------------+| class || customer || exam || gender || goods || purchase || student |原创 2022-02-24 12:22:27 · 1815 阅读 · 0 评论 -
【MYSQL】数据库的设计(了解)
表之间的关系,通常包含一对多,多对一,多对多。mysql的数据类型不包括数组。redis包括数组。我们在设计数据库的时候要根据实际需求进行规划。就比如大学生选课的时候,一个人肯定要选很多课,课肯定要被很多学生选。这种关系我们如果用2张表来表示的话,大概样子是这样的:但是,问题来了,MySQL里面并没有数组形式,那么course和student里面那么多数据,怎么读取呢?有的人说用split,但这样不方便。所以我们要建立一个中间表,来解决这种问题。根据以后我们不同的需求场景,我们需要进行不原创 2022-02-24 12:13:25 · 463 阅读 · 0 评论 -
【MYSQL】check 检查约束(详解)
check约束其实就是一个检查功能,反正就是对输入数据的一个限制,如果不满足限制,那么就无法插入数据。mysql> create table gender(id int primary key auto_increment,name varchar(20),sex varchar(2), -> check(sex='男' or sex='女' or sex='秘密'));Query OK, 0 rows affected (0.04 sec)mysql> desc gend原创 2022-02-23 23:09:33 · 6876 阅读 · 0 评论 -
【MYSQL】foreign key 外键约束(详解)
外键是关联不同表之间的一个联接,比如我们现在有两张表:那么如何设置外键呢?mysql> create table class(classId int primary key auto_increment,className varchar(20));Query OK, 0 rows affected (0.02 sec)mysql> create table student(studentId int primary key auto_increment,name varchar(2原创 2022-02-23 22:40:25 · 603 阅读 · 0 评论 -
【MYSQL】数据库的一些基本操作2(复习用)
就算是没有学过mysql的,也可以根据我的代码来理解含义,看的多,敲的多,自然就会了。mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys || z1 |+-原创 2022-02-23 19:36:10 · 216 阅读 · 0 评论 -
【MYSQL】数据库的一些基本操作(复习用)
mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys || z1 |+--------------------+5 rows in set (0.00 sec原创 2022-02-22 16:41:03 · 146 阅读 · 0 评论