摘要: 多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。 前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,也可能没有建立外键。比如:员工表和部门表,这两个表依靠 “部门编号” 进行关联。 1. 一个案例引发的多表连接 1.1 案例 阅读全文
posted @ 2021-12-14 23:35 OvvO 阅读(171) 评论(0) 推荐(0)
摘要: 1. 排序数据 1.1 排序规则 使用 ORDER BY 子句排序 ASC(ascend): 升序 DESC(descend): 降序 ORDER BY 子句在 SELECT 语句的结尾。 1.2 单列排序 SELECT last_name, job_id, department_id, hire_ 阅读全文
posted @ 2021-12-14 23:33 OvvO 阅读(49) 评论(0) 推荐(0)
摘要: 1. 算术运算符 算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+)、减(-)、乘(*)、除(/)和取模(%)运算。 1.加法与减法运算符 mysql> SELECT 100, 100 + 0, 100 - 0, 100 + 50, 100 + 50 -3 阅读全文
posted @ 2021-12-14 23:32 OvvO 阅读(169) 评论(0) 推荐(0)
摘要: 1. SQL 概述 1.1 SQL 背景知识 1946 年,世界上第一台电脑诞生,如今,借由这台电脑发展起来的互联网已经自成江湖。在这几十年里,无数的技术、产业在这片江湖里沉浮,有的方兴未艾,有的已经几幕兴衰。但在这片浩荡的波动里,有一门技术从未消失,甚至 “老当益壮”,那就是 SQL。 45 年前 阅读全文
posted @ 2021-12-14 23:30 OvvO 阅读(161) 评论(0) 推荐(0)
摘要: 1. MySQL 的卸载 步骤 1:停止 MySQL 服务 在卸载之前,先停止 MySQL8.0 的服务。按键盘上的 “Ctrl + Alt + Delete” 组合键,打开 “任务管理器” 对话框,可以在 “服务” 列表找到 “MySQL8.0” 的服务,如果现在 “正在运行” 状态,可以右键单击 阅读全文
posted @ 2021-12-14 23:28 OvvO 阅读(185) 评论(0) 推荐(0)
摘要: 1. 为什么要使用数据库 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的实现过程大多通过各种关系数据库来完成。 持久化的主要作用是将内存中的数据存储在关系型数据库中,当然 阅读全文
posted @ 2021-12-14 23:26 OvvO 阅读(139) 评论(0) 推荐(0)
摘要: 1. MySQL8新特性概述 MySQL从5.7版本直接跳跃发布了8.0版本,可见这是一个令人兴奋的里程碑版本。MySQL 8版本在功能上做了显著的改进与增强,开发者对MySQL的源代码进行了重构,最突出的一点是多MySQL Optimizer优化器进行了改进。不仅在速度上得到了改善,还为用户带来了 阅读全文
posted @ 2021-12-14 23:18 OvvO 阅读(187) 评论(0) 推荐(0)
摘要: 在实际开发中,我们经常会遇到这样的情况:有 2 个或者多个相互关联的表,如商品信息和库存信息分别存放在 2 个不同的数据表中,我们在添加一条新商品记录的时候,为了保证数据的完整性,必须同时在库存表中添加一条库存记录。 这样一来,我们就必须把这两个关联的操作步骤写到程序里面,而且要用事务包裹起来,确保 阅读全文
posted @ 2021-12-14 23:15 OvvO 阅读(62) 评论(0) 推荐(0)
摘要: 1. 变量 在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间结果数据,或者输出最终的结果数据。 在 MySQL 数据库中,变量分为系统变量以及用户自定义变量。 1.1 系统变量 1.1.1 系统变量分类 变量由系统定义,不是用户定义,属于服务器层面。启动MySQL服务,生成M 阅读全文
posted @ 2021-12-14 23:14 OvvO 阅读(59) 评论(0) 推荐(0)
摘要: MySQL从5.0版本开始支持存储过程和函数。存储过程和函数能够将复杂的SQL逻辑封装在一起,应用程序无须关注存储过程和函数内部复杂的SQL逻辑,而只需要简单地调用存储过程和函数即可。 1. 存储过程概述 1.1 理解 含义:存储过程的英文是 Stored Procedure。它的思想很简单,就是一 阅读全文
posted @ 2021-12-14 23:10 OvvO 阅读(99) 评论(0) 推荐(0)
摘要: 1. 常见的数据库对象 对象 描述 表(TABLE) 表是存储数据的逻辑单元,以行和列的形式存在,列就是字段,行就是记录 数据字典 就是系统表,存放数据库相关信息的表。系统表的数据通常由数据库系统维护,程序员通常不应该修改,只可查看 约束(CONSTRAINT) 执行数据校验的规则,用于保证数据完整 阅读全文
posted @ 2021-12-14 23:09 OvvO 阅读(96) 评论(0) 推荐(0)
摘要: 1. 约束(constraint)概述 1.1 为什么需要约束 数据完整性(Data Integrity)是指数据的精确性(Accuracy)和可靠性(Reliability)。它是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。 为了保证数据的完整性, 阅读全文
posted @ 2021-12-14 23:06 OvvO 阅读(114) 评论(0) 推荐(0)
摘要: 1. MySQL中的数据类型 类型 类型举例 整数类型 TINYINT、SMALLINT、MEDIUMINT、INT(或INTEGER)、BIGINT 浮点类型 FLOAT、DOUBLE 定点数类型 DECIMAL 位类型 BIT 日期时间类型 YEAR、TIME、DATE、DATETIME、TIM 阅读全文
posted @ 2021-12-14 23:03 OvvO 阅读(166) 评论(0) 推荐(0)
摘要: 1. 插入数据 1.1 实际问题 解决方式:使用 INSERT 语句向表中插入数据。 1.2 方式1:VALUES的方式添加 使用这种语法一次只能向表中插入一条数据。 情况1:为表的所有字段按默认顺序插入数据 INSERT INTO 表名 VALUES (value1,value2,....); 值 阅读全文
posted @ 2021-12-14 22:57 OvvO 阅读(83) 评论(0) 推荐(0)
摘要: 1. 基础知识 1.1 一条数据存储的过程 存储数据是处理数据的第一步。只有正确地把数据存储起来,我们才能进行有效的处理和分析。否则,只能是一团乱麻,无从下手。 那么,怎样才能把用户各种经营相关的、纷繁复杂的数据,有序、高效地存储起来呢? 在 MySQL 中,一个完整的数据存储过程总共有 4 步,分 阅读全文
posted @ 2021-12-14 22:51 OvvO 阅读(82) 评论(0) 推荐(0)
摘要: 子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从 MySQL 4.1 开始引入。 SQL 中子查询的使用大大增强了 SELECT 查询的能力,因为很多时候查询需要从结果集中获取数据,或者需要从同一个表中先计算得出一个数据结果,然后与这个数据结果(可能是某个标量,也可能是某个集合)进行比 阅读全文
posted @ 2021-12-14 22:45 OvvO 阅读(51) 评论(0) 推荐(0)
摘要: 我们上一章讲到了 SQL 单行函数。实际上 SQL 函数还有一类,叫做聚合(或聚集、分组)函数,它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值。 1. 聚合函数介绍 什么是聚合函数 聚合函数作用于一组数据,并对一组数据返回一个值。 聚合函数类型 AVG() SUM() MAX( 阅读全文
posted @ 2021-12-14 22:37 OvvO 阅读(126) 评论(0) 推荐(0)