MySQL
文章平均质量分 71
SQL语言基础
奥卡姆的剃刀生锈了
这个作者很懒,什么都没留下…
展开
-
MySQL学习笔记——分组查询
目录语法及特点语法特点案例说明简单的分组查询添加分组前的筛选条件添加分组后的筛选条件(having关键字)按表达式或函数分组按多个字段分组添加排序语法及特点语法select 分组函数,列(要求出现在group by的后面)from 表where 筛选条件group by 分组的列表order by 子句特点查询列表比较特殊,要求是分组函数和group by后出现的字段where关键字要出现在group by前面分组查询中的筛选条件分为两类:分组前筛选和分组后筛选分组函数做条件肯原创 2021-04-06 16:04:20 · 218 阅读 · 0 评论 -
MySQL学习笔记——流程控制结构
目录概述if函数case结构作为表达式使用作为单独的语句使用概述分类顺序结构:程序从上往下依次执行分支结构:程序从两条或多条路径中选择一条去执行循环结构:程序在满足一定条件的基础上,重复执行一段代码if函数功能:实现简单的双分支语法:if(表达式1,表达式2,表达式3)执行顺序:如果表达式1成立,则if函数返回表达式2的值,否则返回表达式3的值应用:任何地方case结构注意:如果then后面跟的是语句的话,一定要加分号;,并且结尾的end变为end case;原创 2021-04-25 21:24:28 · 281 阅读 · 0 评论 -
MySQL学习笔记——变量
目录概述系统变量自定义变量用户变量局部变量用户变量和局部变量对比概述分类系统变量:全局变量:服务器每次启动将为所有的全局变量赋初值,针对所有的会话(连接)有效,但是不能跨重启(重新启动后,会恢复默认的初值)会话变量:仅仅针对当前会话(连接)有效自定义变量用户变量局部变量系统变量说明:变量由系统提供,不是用户自定义,属于服务器层面语法:查看所有全局变量:show global|【session】 variables;.其中gloable表示查看全局变量;ses原创 2021-04-22 21:38:43 · 187 阅读 · 0 评论 -
MySQL学习笔记——标识列(自增长列)
目录概述特点创建表时设置标识列设置标识列的参数修改表时设置标识列修改表时删除标识列概述标识列又称为自增长列含义:可以不用手动的插入值,系统提供默认的序列值特点标识列不一定和主键搭配,但要求必须是一个key(主键、唯一、外键或自定义的key)一个表中最多只能有一个标识列标识列的数据类型只能是数值型创建表时设置标识列直接在约束条件后面加上auto_increment关键字往表中添加数据的时候,就可以不用填写(或填写null)标识列的值,该列的值会自动填写为自增长序列。设置原创 2021-04-20 18:00:43 · 166 阅读 · 0 评论 -
MySQL学习笔记——常见约束(外键、主键与唯一的对比、添加删除约束、外键的级联删除和级联置空)
目录概述创建表时添加约束添加列级约束添加表级约束通用的写法主键和唯一的对比外键的特点修改表时添加约束语法示例修改表时删除约束概述含义:一种限制,用于限制表中的数据,为了保证表中数据的准确性和可靠性(即一致性)分类:六大约束not null:非空,用于保证该字段的值不能为空(比如姓名、学号等)default:默认,用于保证该字段有默认值(比如性别等)primary key:主键,用于保证该字段的值具有唯一性,并且非空(比如学号、员工编号等)unique:唯一,用于保证该字段的值具有唯一性,可原创 2021-04-19 21:04:04 · 1387 阅读 · 0 评论 -
MySQL学习笔记——DQL查询语句执行顺序
select 查询列表 7from 表1 别名 1连接类型 join 表2 别名 2on 连接条件 3where 筛选条件 4group by 分组列表 5having 分组后的筛选条件 6order by 排序列表 8limit 起始条目索引,条目数; 9...原创 2021-04-18 21:48:49 · 259 阅读 · 0 评论 -
MySQL学习笔记——DDL(Data Define Language——数据定义语言)
目录概述库的管理库的创建库的修改库的删除表的管理表的创建(重点)表的修改修改列名修改表的类型或约束添加新列删除列修改表名表的删除表的复制仅仅复制表的结构复制表的结构+数据只复制部分表的结构和数据仅仅赋值部分表的结构,不复制数据概述作用:管理数据库与库中的表库的管理:创建、修改、删除表的管理:创建、修改(不是修改表中的数据,而是修改表的结构)、删除(不是删除表中的数据,而是删除整个表,即删除后表不再存在,无法再向表中添加数据。DML语言中的删除表是指清空表中的数据)关键字:(注意与DML语句原创 2021-04-15 20:30:52 · 602 阅读 · 0 评论 -
MySQL学习笔记——联合查询
目录概述特点概述关键字union:将多条查询语句合并成一个结果语法查询语句1union查询语句2union...比如查询部门编号>90或邮箱包含a的员工信息用之前的or关键字也可以实现使用union关键字应用场景:要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时特点要求多条查询语句的查询列数一致要求多条查询语句的所查询的每一列的类型和顺序保持一致union关键字结果是默认去重的,如果使用union all关键字,则结果包含重原创 2021-04-13 20:16:41 · 108 阅读 · 0 评论 -
MySQL学习笔记——存储过程和函数
目录概述储存过程创建语法调用语法储存过程举例空参储存过程创建带in参数模式的储存过程创建带out模式的存储过程创建带inout模式参数的储存过程删除存储过程查看存储过程的信息函数创建语法调用语法概述类似于java中的方法好处:提高代码的重用性简化操作储存过程含义:一组预先编译好的SQL语句的集合,理解成批处理语句存储过程不能修改内容,如果要修改内容,就把存储过程删了,重新建一个存储过程。好处:提高代码的重用性简化操作减少了编译次数,并且减少了和数据库服务器的连接次数,提原创 2021-04-23 19:57:19 · 344 阅读 · 0 评论 -
MySQL学习笔记——视图
目录概述视图的好处创建视图视图的修改方式一方式二删除视图查看视图视图的更新插入修改删除注意事项视图与表的对比概述含义:虚拟表,和普通表一样使用,其作用是简化代码MySQL5.1版本出现的新特性,是通过表动态生成的数据,即一个虚拟的结果集。 行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了SQL逻辑,不保存查询结果。举个有助于理解的例子:有两个班级,班级A和班级B,现在需要从A、B两班中各抽出一些人来参加歌唱比赛。对于班级A和班级B来说,他们都是实际存在的一个班级,对原创 2021-04-21 21:12:55 · 438 阅读 · 0 评论 -
MySQL学习笔记——TCL(Transaction Control Language —— 事务控制语言)
目录概述什么是事务补充:存储引擎事务的特点(ACID属性)原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)事务的创建隐式事务和显式事务事务的创建步骤事务创建的演示事务并发事务并发时会产生的问题如何去避免回滚点概述什么是事务事务:一个或一组SQL语句组成一个执行单元,这个执行单元中的内容要么全部执行,要么全部不执行。详细解释:事务是由单独单元的一个或多个SQL语句组成,在这个单元中,每个SQL语句都是相互依赖的。而整个单独单元作为原创 2021-04-20 22:12:11 · 269 阅读 · 0 评论 -
MySQL学习笔记——SQL中常见的数据类型
目录SQL中常见的数据类型数据类型选择的原则整型特点案例小数分类特点字符型分类char和varcharchar和varchar的区别Enum(枚举类型)set类型日期型SQL中常见的数据类型数值型整型小数:定点数、浮点数字符型较短的文本:char、varchar较长的文本:text、blob(较长的二进制数据)日期型数据类型选择的原则所选择的类型越简单越好,能保存数值的类型越小越好整型特点如果不设置无符号,默认是无符号,如果要设置有符号,需要加unsigne原创 2021-04-18 21:38:28 · 910 阅读 · 3 评论 -
MySQL学习笔记——DML语言(数据操作语言)(增、删、改)
目录插入(insert)方式一语法特点修改(update)删除(delete)插入(insert)方式一语法insert into 表名(列名,...) values(值1,...);特点beauty表的字段插入的类型要与列的类型一致或兼容不可以为null的列必须插入值,可以为null的列(nullable)如果不想插入值,如何插入方式一:插入的值直接填null方式二:插入的字段和值都不填写修改(update)删除(delete)...原创 2021-04-14 20:31:13 · 306 阅读 · 0 评论 -
MySQL学习笔记——分页查询
目录概述案例概述应用场景:当要显示的数据,一页显示不全,需要分页提交SQL请求语法:select 查询列表from 表【join type join 表2on 连接条件where 筛选条件group by 分组字段having 分组后的筛选order by 排序的字段】limit offset,size;案例查询前五条员工的信息...原创 2021-04-13 16:07:02 · 85 阅读 · 0 评论 -
MySQL学习笔记——子查询
目录概述分类(以套嵌查询语句为例)where或having后面的子查询特点标量子查询概述含义:出现在其他语句(可以是增删改查等任何语句)中的select语句,称为子查询或内查询如果是套嵌在查询语句中的子查询,那么外部的查询语句叫做主查询或外查询分类(以套嵌查询语句为例)按子查询出现的位置进行分类:select后面:仅仅只支持标量子查询from后面:支持表子查询where或having后面(重点):支持标量子查询、列子查询,也支持行子查询,但是用的较少exists后面(相关子查询)原创 2021-04-09 10:47:33 · 135 阅读 · 0 评论 -
MySQL学习笔记——外连接、交叉连接
目录概述案例概述应用场景:用于查询一个表中有,而另一个表中没有的记录特点:外连接的查询结果为主表中的所有记录如果从表中有和它匹配的,则显示匹配的值如果从表中没有和它匹配的,则显示null外连接的查询结果=内连接结果+主表中有而从表中没有的结果(显示为null)相当于把两个表合并,最后显示出来的合并后的表中,包含主表中所有的对象(每一行称为一个对象),而该对象如果在连接条件下没有对应的对象,那么在新表中该对象对应从表中的字段就为null例如把departments表作为主表,em原创 2021-04-08 15:52:30 · 96 阅读 · 0 评论 -
MySQL学习笔记——SQL99语法(内连接)
目录语法内连接等值连接非等值连接自连接语法select 查询列表from 表1 AS 别名 【连接类型】 join 表2 AS 别名on 连接条件【where 筛选条件】【group by 分组】【having 筛选条件】【order by 排序列表】连接类型:内连接:inner外连接左外:left (outer)右外:right (outer)全外:full (outer)交叉连接:cross内连接等值连接特点:可以添加排序、分组、筛选in原创 2021-04-07 21:18:45 · 173 阅读 · 0 评论 -
MySQL学习笔记——连接查询
目录概述笛卡尔乘积现象连接查询的分类各种连接方式举例(MySQL)等值连接特点简单举例为表起别名添加筛选条件添加分组条件添加排序实现三表连接非等值连接自连接概述含义:又称多表查询,当查询的字段来自于多个表的时候,就会用到连接查询笛卡尔乘积现象例如表1有m行,表2有n行,结果有m*n行,这种现象就叫做笛卡尔乘积现象发生原因:没有添加有效的连接条件如何避免:添加有效的连接条件连接查询的分类按年代分类sql92标准(即1992年推出的标准):MySQL中仅仅支持内连接sql99标准原创 2021-04-07 16:56:35 · 152 阅读 · 0 评论 -
MySQL学习笔记——常见函数
目录概念单行函数字符函数数学函数日期函数概念类似于java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名好处:隐藏了函数实现的细节提高了代码的重用性调用格式:select 函数名(参数列表) 【from 表】,其中from 表只有在参数列表中有表中的字段时才会使用分类:单行函数:如concat、length、ifnull等。分组函数:做统计使用,又称为统计函数、聚合函数、组函数单行函数字符函数length(参数):获取参数值的字节个数(中文在utf-8中占3个原创 2021-03-31 19:11:08 · 117 阅读 · 0 评论 -
MySQL学习笔记——查询语句(DQL)
目录基础查询基础查询语法及其特点基本的查询语句查询字段、常量、表达式、函数起别名去重SQL中‘+’的作用使用concat实现拼接细节补充基础查询基础查询语法及其特点语法:select 查询列表 from 表名;类似于java中的System out.println(打印的东西),其作用都是将需要的数据显示出来。特点:查询列表可以是:表中的字段、常量值、表达式、函数查询的结果是一个虚拟的表格基本的查询语句查询字段、常量、表达式、函数查询表中的单个字段查询表中的多个字段查原创 2021-03-29 21:40:54 · 556 阅读 · 0 评论 -
MySQL学习笔记——MySQL的基本操作
目录配置文件MySQL服务的启动和停止MySQL服务的登录和登出配置文件MySQL的主要配置文件在安装目录的my.ini文件里my.ini中的一些重要的配置MySQL服务的启动和停止方式一:计算机——右键管理——服务——找到MySQL(可以设置为自动启动)方式二:通过管理员的方式运行cmd启动服务:net start 服务名(服务名默认为默认为MySQL)停止服务:net stop 服务名MySQL服务的登录和登出方式一:通过MySQL自带的客户端(仅限于ro原创 2021-03-29 11:07:29 · 191 阅读 · 0 评论 -
MySQL学习笔记——(数据库概述)
目录什么是数据库数据库的相关概念数据库储存数据的特点什么是数据库数据库是储存数据的一种容器,它和储存数据的一些其它容器的作用一样,比如数组、集合、文件等等。但是它相较于其他容器,在储存大体量的数据时,有着十分明显的优势。首先对于数组和集合这种容器来说,它是将数据储存在内存中。这就产生了两个明显的缺点,第一,内存在断电时会造成数据的丢失,第二,内存所能储存的数据量过小。这种容器更适合那种程序运行时的临时变量数据,这种数据的体量较少,而且对速度要求高。而对于文件这种容器来说,它对文件操作的效率较低(比原创 2021-03-28 20:29:22 · 89 阅读 · 0 评论