SQL
SQL教程
凡我出品,皆属精品
这个作者很懒,什么都没留下…
展开
-
#力扣MySQL178. 分数排名 @FDDLC
题目描述:178. 分数排名 - 力扣(LeetCode) (leetcode-cn.com)MySQL:select a.Score Score,(select count(distinct b.Score) from Scores b where b.Score>=a.Score) 'Rank'from Scores aorder by a.Score desc;原创 2021-06-27 23:07:15 · 127 阅读 · 0 评论 -
#力扣MySQL:180. 连续出现的数字 @FDDLC
题目描述:180. 连续出现的数字 - 力扣(LeetCode) (leetcode-cn.com)自测用例:{"headers": {"Logs": ["Id", "Num"]}, "rows": {"Logs": [[1, 1], [2, 1], [3, 1], [4, 2], [5, 1], [6, 2], [7, 2]]}}{"headers": {"Logs": ["Id", "Num"]}, "rows": {"Logs": [[1, 3], [2, 3], [3, 3],原创 2021-06-24 23:32:32 · 149 阅读 · 0 评论 -
#力扣MySQL:177. 第N高的薪水@FDDLC
题目描述:177. 第N高的薪水 - 力扣(LeetCode) (leetcode-cn.com)自测用例:{"headers": {"Employee": ["Id", "Salary"]}, "argument": 2, "rows": {"Employee": [[1, 100], [2, 200], [3, 300]]}}{"headers": {"Employee": ["Id", "Salary"]}, "argument": 2, "rows": {"Employee":原创 2021-06-23 23:38:03 · 132 阅读 · 0 评论 -
#MySQL:limit @FDDLC
一、概述limit的作用:指定范围二、示例0、不使用limit时的情况:select * from category;1、使用limit,后接一个参数,即:limit选取的条数a、选取0条:b、选取前2条:2、使用limit,后接2个参数,即:limit起始索引,选取的条数注:索引从0开始编号a、从0开始,选取2条b、从1开始,选取2条...原创 2021-05-31 23:25:51 · 72 阅读 · 2 评论 -
#力扣MySQL:626. 换座位 #case、when、then、else、end、if、union、abs、greatest @FDDLC
题目描述:626. 换座位 - 力扣(LeetCode) (leetcode-cn.com)补充说明:id从1开始自增长!!!自测用例:{"headers": {"seat": ["id","student"]}, "rows": {"seat": [[1,"Abbot"],[2,"Doris"],[3,"Emerson"],[4,"Green"],[5,"Jeames"]]}}{"headers": {"seat": ["id","student"]}, "rows": {..原创 2021-05-21 09:31:35 · 176 阅读 · 0 评论 -
#力扣MySQL:596. 超过5名学生的课 @FDDLC
题目描述:596. 超过5名学生的课 - 力扣(LeetCode) (leetcode-cn.com)自测用例:{"headers": {"courses": ["student", "class"]}, "rows": {"courses": [["A", "Math"], ["B", "English"], ["C", "Math"], ["D", "Biology"], ["E", "Math"], ["F", "Computer"], ["G", "Math"], ["H", ".原创 2021-05-19 23:30:19 · 109 阅读 · 0 评论 -
#力扣MySQL:197. 上升的温度 @FDDLC
题目描述:197. 上升的温度 - 力扣(LeetCode) (leetcode-cn.com)自测用例:{"headers": {"Weather": ["Id", "RecordDate", "Temperature"]}, "rows": {"Weather": [[1, "2015-01-01", 10], [2, "2015-01-02", 25], [3, "2015-01-03", 20], [4, "2015-01-04", 30]]}}{"headers": {"We.原创 2021-05-19 23:21:31 · 109 阅读 · 0 评论 -
#MySQL自定义存储过程:求n的阶乘 @FDDLC
一、预处理#MySQL:1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL… @FDDLC注:请务必参考!二、创建过程:使用1、打开一个Query窗口:2、编写如下代码:注意要先预处理!!!(在最上面)create procedure factorial(n int)begin declare i int default 1; #变量声明及初始化 declare ans int def.原创 2021-05-19 10:03:07 · 4302 阅读 · 0 评论 -
#MySQL自定义函数:求1到n的和 @FDDLC
一、预处理#MySQL:1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL… @FDDLC注:请务必参考!二、创建过程:使用1、打开一个Query窗口:2、编写如下代码:注意要先预处理!!!(在最上面)create function mySum(n int)returns int #返回值类型begin declare i int default 1; #变量声明及初始化 decla.原创 2021-05-19 09:44:35 · 5056 阅读 · 3 评论 -
#MySQL:1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL… @FDDLC
问题:1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)解决:set global log_bin_trust_function_cre.原创 2021-05-19 09:19:59 · 776 阅读 · 0 评论 -
#SQLServer自定义函数:求1到n的和 @FDDLC
一、问题SQLServer如何创建一个函数?二、步骤:使用1、打开一个查询窗口2、编写如下代码:create function sum(@n int)returns int --声明返回值类型asbegin declare @i int,@ans int; --声明变量 select @i=1,@ans=0; --变量初始化 while @i<=@n begin set @ans=@ans+@i; set @i=@i+1; end return @.原创 2021-05-18 23:41:20 · 2079 阅读 · 1 评论 -
#SQLServer存储过程:求n的阶乘 @FDDLC
一、问题SQLServer如何创建一个存储过程?二、步骤1、打开一个"New Query"窗口;2、在Query窗口中编写SQL代码:create procedure factorial@n intasbegin declare @i int,@ans int; select @i=1,@ans=1; while @i<=@n begin set @ans=@ans*@i; set @i=@i+1; end print @ans;end3、点.原创 2021-05-18 21:58:19 · 3033 阅读 · 2 评论 -
#MySQL命令:查看版本号和端口 @FDDLC
1、查看端口:show variables like 'port';2、查看版本号:select version();原创 2020-12-09 12:50:32 · 150 阅读 · 0 评论 -
#MySQL事务:ACID、原子性、一致性、隔离性、持久性 @FDDLC
一、事务何为事务?一组有序操作,要么同时执行成功,要么同时执行失败,那么这组有序操作就可以认为是一个事务。比如一个事务分为A、B、C三步:先执行A,成功;再执行B,失败,那么,原先成功的A也会回滚到执行前的状态,即最终数据库中的数据跟执行事务前是一样的。二、事务的四个特性事务有4个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability),简称ACID。1、原子性:Atomicity事务中的所有操作是一.原创 2020-12-01 13:33:41 · 340 阅读 · 0 评论 -
#MySQL5.x中的多表查询:内连接、外连接、子查询 @FDDLC
前期准备:dept表:employee表:一、内连接1、隐式内连接:whereselect * from employee,dept where employee.dept_id=dept.id;2、显示内连接:join或innerjoinselect * from employee inner join dept on employee.dept_id=dept.id;或者省略inner:select * from employee j...原创 2020-12-01 13:02:58 · 164 阅读 · 0 评论 -
#MySQL5.x:数据库的备份与还原 @FDDLC
一、备份与还原:命令行的方式1、备份:mysqldump -u用户名 -p密码要备份的数据库 >目标文件夹//xxx.sql结果:2、还原:假设之前的mydb已经没了a、新建数据库:create database db;注:数据库的名称可以和之前的mydb不同,比如叫db也行b、使用数据库:c、执行备份的sql文件:source c://mydb.sql这样所有数据就又回来了。二、备份与还原:Navicat1、备份:2、还原:...原创 2020-11-30 22:18:40 · 111 阅读 · 0 评论 -
#SQL:函数依赖、范式、第一范式(1NF)、第二范式(2NF)、第三范式(3NF) @FDDLC
一、函数依赖与码若X->Y,即由X能确定Y,或者说一个已知的X能确定一个唯一的Y,则称Y依赖于Y(跟初中的函数定义一致)。一个学生只能属于一个学院,即知道学号X,就能确定对应的学院代码Y,所以学院代码Y依赖于学号X。1、部分函数依赖Y由X中的部分即能确定,比如(学号,姓名)->(系主任),显然,只需(学号,姓名)里的学号就能确定系主任!因此:(系主任)部分函数依赖于(学号,姓名)2、完全函数依赖(可对比部分函数依赖)Y由X中的全部属性确定,比如(学号,课程号)->某原创 2020-11-30 21:42:04 · 2936 阅读 · 0 评论 -
#MySQL5.x:约束 #非空、unique、自增长、主键、外键、级联更新、级联删除 @FDDLC
一、约束:1、约束种类:a、主键约束:primarykeyb、非空约束:notnullc、唯一约束:uniqued、外键约束:foreignkey2、在创建表时添加约束:3、非空约束:notnull在创建表时某字段未添加非空约束,创建表后再添加非空约束:alter table stu modify name varchar(20) not null;或者使用可以修改字段名的change关键字(这里只改约束,故新字段名也为name):alt...原创 2020-11-30 19:52:41 · 268 阅读 · 2 评论 -
#MySQL5.x中的查询:排序查询、聚合函数、分组查询、分页 @FDDLC
1、排序查询:表中的数据:指定排序方式:acs:升序,缺省值desc:降序升序:asc降序:desc多重排序:如果math值相同,再按english值排序2、聚合函数:一般可认为聚合函数不会作用在null上count:select count(*) from scores;select count(math) from scores; 说明:排除【全空】,且不去重!select count(...原创 2020-11-29 18:57:09 · 207 阅读 · 0 评论 -
#MySQL5.x:对表中数据的查询 @FDDLC
完整语法:1、查询整张表的所有记录:注:*表示所有字段2、查询部分字段:查询部分字段(去重):3、查询:利用已有列产生新的列表如下:查询:注:null与任何量的运算结果都为null上面使用了ifnull来指定null的含义(替代值)!给字段起别名:注:上面的as可以省略4、SQL中的关系运算符:=:等于(注意,不是==)>:大于>=:大于等于<:小于...原创 2020-11-29 15:42:51 · 136 阅读 · 0 评论 -
#MySQL5:对表中数据的增删改操作、一次性插入多条数据 @FDDLC
准备好一张表:说明:本文只显示核心语法,中间可能会有其他对后续有影响的操作没有显示出来!1、往表中插入一条记录:2、删除表中的数据:3、删除表中的全部数据:逐条删除deletefromstu;4、删除表中的全部数据:先删除整个表,再新建一个和原表结构一样的空表:效率一般比【3】更高5、修改表中的数据:注意:updatestusetname='vip';会把所有记录的name改为vip!...原创 2020-11-29 14:08:17 · 222 阅读 · 0 评论 -
#MySQL5:对表结构的操作 @FDDLC
1、修改表名:2、查看表的字符集:修改表的字符集:3、在表中新增列:4、修改列名称或列类型:如果只改类型,还可以这样:5、删除列:原创 2020-11-29 13:38:16 · 130 阅读 · 0 评论 -
#MySQL简介 #MySQL5中简单的命令、数据类型、创建表 @FDDLC
一、MySQL简介MySQL是一款关系型数据库,现在是Oracle旗下的产品。包括MySQL在内的所有关系型数据库都支持SQL语言(StructuredQueryLanguage,结构化查询语言),但不同的关系型数据库的SQL会有些区别。二、MySQL的一些语法特点1、SQL语句以分号结束;2、在Windows中不区分大小写;3、注释:单选注释:--注释 (两个连字符接一个空格作为单行注释的开头)单选注释2:#注释 (#号开头,再接注释)多行注释:/*注...原创 2020-11-28 22:39:57 · 229 阅读 · 0 评论 -
#MySQL5教程:简单的命令行命令 #登录、退出、启动、停止 @FDDLC
前提:1、MySQL已添加到环境变量中(把命令行的工作目录切换到MySQL根目录下的bin文件夹亦可)2、测试版本为5.x,其他版本可能不一样!1、登录MySQL方式一(会暴露密码):mysql -u【用户名】 -p【密码】方式二(不显示密码):mysql -u【用户名】 -p方式三(指定ip):可用于远程登录附:2、退出登录方式一:exit方式二:quit3、启动与停止mysql服务:方式很多,只说和...原创 2020-11-28 21:13:05 · 330 阅读 · 0 评论