
MySQL
文章平均质量分 79
dogdogggg
这个作者很懒,什么都没留下…
展开
-
MySQL_13--窗口函数
文章目录前言--理解窗口函数1. 窗口函数的基本用法2. 举例应用2.1 查询每个学生的分数最高的前3门课程2.2 聚合函数作为窗口函数前言–理解窗口函数窗口记录的集合;窗口函数在满足某些条件的记录集合上执行的特殊函数,对于每条记录,都要在此窗口内执行该函数。窗口函数与聚合函数的区别:聚合函数是多条记录聚合为一条,窗口函数是每条记录都会执行,有几条记录执行完后还是几条。聚合函数可以用于窗口函数。1. 窗口函数的基本用法基本语法窗口函数名 over (子句) from原创 2021-05-21 21:46:43 · 546 阅读 · 0 评论 -
MySQL_12--补充内容(distinct, 字符串与date的转换, 主键类型)
文章目录前言1. 去重关键字--distinct2. 笛卡尔现象3. varchar类型与date类型的转换3.1 str_to_date()3.2 date_format()3.3 date与datetime的区别4. 主键类型4.1 单一主键和复合主键4.2 自然主键和业务主键前言这篇文章里的内容都是前面博文里漏写的一部分知识点,包括:去重关键字 distinct;字符串类型与date类型的相互转化: str_to_date(),date_format();主键的类型:(自然主键,业务主.原创 2021-05-20 22:18:30 · 610 阅读 · 1 评论 -
MySQL_12--数据库三范式
文章目录前言1. 第一范式2. 第二范式3. 第三范式前言什么是数据库范式?是数据库表的设计依据,教我们怎么进行数据库表的设计。(按照下文中的范式进行数据库表的设计,不会造成数据冗余,空间浪费。)范式分类第一范式:要求每一张表都有主键(primary key),且每个字段都是原子的,不可再分的。第二范式:建立在第一范式的基础上,要求所有的非主键字段完全依赖于主键字段,不能有部分依赖的情况。第三范式:建立在第二范式的基础上,要求所有的非主键字段直接依赖于主键字段,不能有原创 2021-05-20 20:39:31 · 176 阅读 · 0 评论 -
MySQL_11--索引(index)
文章目录1. 什么是索引(index)?2. 索引的实现原理3. 什么条件下会考虑添加索引?4. 索引的创建与删除5. 索引失效1. 什么是索引(index)?定义及作用1、索引是在表的字段上创建的;2、相当于一本书的目录,能够缩小扫描区间,提高查询效率;3、可以一个字段创建索引,也可以多个字段联合起来创建复合索引。注意事项1、实际上,字典的目录是按照a,b,c,d…排序的,因为只有排序后才有区间查找这一说。2、在MySQL中,索引也是需要排序的,它的排序与TreeSet相同原创 2021-05-20 17:07:28 · 182 阅读 · 0 评论 -
MySQL_10--外键约束(foreign key)
文章目录1. 业务背景2. 外键的作用3. 外键的创建与删除3.1 创建的语法2.读入数据总结1. 业务背景—> 业务:需要保存学生信息和班级信息方案一:全部存在一张表上 t_students缺点:信息冗余,空间浪费!方案二:存两张表(t_student, t_class)t_class(班级表):t_student(学生表):注意: 如果 t_student 的 c_no 没有任何约束,那么有可能输入的数据是无效的,比如:输入102,但是没有102这个班级。此时原创 2021-05-20 15:05:39 · 274 阅读 · 0 评论 -
MySQL练习题实战_02
文章目录1、not in 应用2、group by + max() + order b3. group by + avg() + order by1、not in 应用题目介绍有一个员工表dept_emp简况如下(第一行表示为员工编号为10001的部门是d001部门):有一个部门经理表dept_manager简况如下(第一行表示为d001部门的经理是编号为10002的员工):问题描述获取所有的员工和员工对应的经理,如果员工本身是经理的话则不显示,以上例子如下:解题思路首先需要.原创 2021-04-07 14:49:39 · 271 阅读 · 0 评论 -
MySQL练习题实战_01
文章目录1、题目(1)--count + group by2. 题目(2)-- left join / not in1、题目(1)–count + group by有一个薪水表,salaries简况如下:建表语句如下: CREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int(11) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT NULL,PR.原创 2021-04-06 11:08:08 · 224 阅读 · 0 评论 -
MySql_01--基本操作(增、删、查、改)
基本操作–创建、删除、增-删-查-改文章目录前言1、创建与删除1.1 数据库的创建与删除2、增、删、查、改2.1 增--insert into2.4 改--update前言1、创建与删除1.1 数据库的创建与删除创建create database 库名;create database 库名 character set 编码;删除drop database 库名;create database df55;create database df55 character .原创 2021-03-20 18:06:53 · 145 阅读 · 1 评论 -
MySQL_09--存储过程与循环&判断
文章目录前言1、存储过程--procedure2、判断语句(if & case)2.1 if...else2.2 case选择分支3. 循环语句(while & loop)3.1 while...do3.2 Loop4.练习与补充前言1、存储过程–procedure介绍可以把存储过程看成一个函数或方法,是一系列的sql语句。创建一个存储过程delimiter //create procedure 存储过程名(形参1 类型1,形参2 类型2…,out 返回值形参原创 2021-04-04 17:59:05 · 813 阅读 · 0 评论 -
MySQL_08--视图&事务&power designer
文章目录1、视图--view1.1 创建与删除1.2 视图的增删查改2、事务--transaction2.1 什么是事务?2.2 事务的四大特性--a、c、i、d3.数据库建模--power designer1、视图–view结束(1)就是在真实的表上构建的一张虚表;(2)许多金融公司,不会让开发人员看到真实表的所有信息,就会构建虚表;(3)应用场景:在金融行业、保险行业、财务行业等。注意:对视图的增、删、改、查与之前是一样的。1.1 创建与删除语法创建:create vie原创 2021-04-04 15:55:33 · 150 阅读 · 0 评论 -
MySQL_07--三表查询
文章目录前言1、模拟调查问卷2、模拟购物车总结前言三表内连接表1 inner join 表2 inner join 表3 on 关联条件1 and 关联条件 2 where 其它条件;1、模拟调查问卷需求需求:向 “学生” 发放关于各个 “老师” 的 不记名“调查表”,每个问题设置回答0-10分,单选(1) 问题是什么不确定?(2) 老师人数和信息不确定?(3) 学生人数和调查结果不确定?设计需要设计三个表完成这个项目:(1)问题表:question–&g.原创 2021-03-31 14:03:53 · 480 阅读 · 0 评论 -
MySQL_06--select-->多表查询
文章目录1、Union & Union all2、多表查询语法一3. 多表查询语法二---连接关键字3.1 内连接---inner join..on3.2 外连接--left(right) join4.模糊查询--like %1、Union & Union all作用当两个表的表结构完全一样时,可以将两个表进行合并区别(1) Union: 可以自动去重,当查询结果的记录完全一样时,就自动去重;(2)Union all:不可以去重,会完全合并出查询结果.2、.原创 2021-03-31 10:57:44 · 1355 阅读 · 0 评论 -
MySQL_05--Select->多条查询&分组查询&分页查询
文章目录前言1. 多条查询--in2. 分组查询--group by3.分页查询--limit4. 补充操作4.1 时间格式函数--date_format()4.2 复制内容(不常用)前言1. 多条查询–in同时查询多条记录(1) 字段名 in(数据1,数据2,…数据n): 查询某字段是否在这个区间里;(2) 字段名 not in(数据1,数据2,…数据n): 查询某字段是否不在这个区间里;select 字段名1, 字段名2,…(*) from 表名 where 字段名 in(数据1,原创 2021-03-26 13:13:03 · 2532 阅读 · 0 评论 -
MySQL_04--排序与常用函数
文章目录前言1. 排序1.1 升序(ascending order)1.2 降序(descending order)2. 常用函数2.1 常用函数--聚合函数2.2 常用函数--时间函数2.3 常用函数--数学函数前言这里使用的表是上一博文中创建的:users。1. 排序1.1 升序(ascending order)语法(将数据按照某一字段进行升序排序)select * from 表名 【where 条件】 order by 字段名 asc;例如:将 users 中的数据按照 j原创 2021-03-25 14:44:57 · 358 阅读 · 0 评论 -
MySQL_03--数据类型的属性
文章目录前言1. 注释--comment2. 常用的6个数据类型属性3. delete 与 truncate练习前言这一节总结在创建表时,常在字段后使用的数据类型属性,案例使用上一节中的练习:Book.1. 注释–comment跟在字段的最后面comment ‘注释内容’create table Book( B_ID bigint(20) comment '图书编号', B_NAME varchar(20) comment .原创 2021-03-24 15:05:03 · 249 阅读 · 2 评论 -
MySQL_02--DDL(数据库定义语言)
文章目录前言1. DDL操作--Database1.1 增(create)1.2 删(drop)1.3 查(show & select)1.4 改(alter)2. DDL操作--Table2.1 增(create)2.2 删(drop)2.3 查(desc & show)2.4 改 (rename & alter)3. 对某一数据库的备份与还原4.练习前言 DDL(Database Defined Language):数据库定义语言,操作对向为库、表。无论是DDL,D.原创 2021-03-23 15:22:59 · 233 阅读 · 2 评论