
数据库
文章平均质量分 88
快乐的大儿童附体
沧浪之水清兮,可以濯吾缨
展开
-
事务有哪些特性?MySQL数据库的隔离级别有哪些?
事务的特性(ACID):原子性(Atomicity):原子性是指一个事务中的操作,要么全部成功,要么全部失败,如果失败,就回滚到事务开始前的状态。一致性(Consistency):一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。那转账举栗子,A账户和B账户之间相互转账,无论如何操作,A、B账户的总金额都必须是不变的。隔离性(Isolation):隔离性是当多个用户 并发的 访问数据库时,如果操作同一张表,数据库则为每原创 2021-08-28 17:07:18 · 116 阅读 · 0 评论 -
数据库的锁定机制有哪些?存储引擎MyISAM与InnoDB的区别是什么?
1. 数据库的锁MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁定,行级锁定和页级锁定。表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低;行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高;页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。不是太常见锁的使用情况从锁的角度来说,表级锁更适合于以查询为主,只有少量按索引条件更新数据的应用,如Web应用;而行级锁则更适合于有原创 2021-08-28 16:45:15 · 236 阅读 · 0 评论 -
统计数据库中每个表的大小
统计一下数据库中每个表的大小select table_name TRUNCATE(data_length / 1024 / 1024 / 1024, 5) + TRUNCATE(index_length / 1024 / 1024 / 1024, 5) '总大小/GB'from information_schema.TABLESwhere 4 > 1group by table_nameorder by 4 DESC; 4 > 1 是说第四列大于1Gorder by 4 .原创 2020-07-31 09:21:35 · 260 阅读 · 0 评论 -
查询每个人单科成绩的最高值
select * from Stu Stu1, (select stu_id, max(score) as maxscore from Stu group by stu_id) Stu2where Stu1.stu_id = Stu2.stu_id and Stu1.score = Stu2.maxscore;原创 2020-07-06 21:04:30 · 754 阅读 · 0 评论 -
查询每个班级的成绩最高分
查询各班成绩的第一名,降序排列select stu_name, class_id, scorefrom Stu Stu1 where score in ( select top 1 score from Stu Stu2 where Stu1.class_id = Stu2.class_id order by score desc)原创 2020-07-06 19:39:52 · 1935 阅读 · 0 评论 -
数据库索引的原理、分类、优缺点、为什么不用B树、红黑树、Hash?什么时候该用索引?索引什么时候会失效?
1. 什么是索引数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询,更新数据库中表的数据.索引的实现通常使用B树和变种的B+树(mysql常用的索引就是B+树)索引的种类. 索引的原理.为什么不用B树和红黑树?为什么不用B树B+树的数据都集中在叶子节点,分支节点只负责索引。 b树的分支节点也有数据 。所以b+树的层高会小于B树,平均的Io次数会远大于 B+树。 B+树索引节点没有数据。比较小。B树可以吧索引完全加载至内存中。 B+树更擅长范围查询。...原创 2020-06-25 22:15:47 · 959 阅读 · 0 评论 -
MySQL-查询选课人数最多的那门课的课程id
表名SC,就两列,stuid和cid,这两列是多对多的关系先用临时表查出了groupby和orderby之后的sid列表,临时表里面的数据是按照count降序排列的。注意临时表必须加别名,不然不能跑。用Limit 0,1取了最大的那个。0代表偏移量,1代表每次取1个。SELECT cid from ( SELECT cid from sc GROUP BY cid ORDER BY (COUNT(cid)) DESC) myTempTableLIMIT 0,1...原创 2020-06-11 12:06:50 · 8878 阅读 · 0 评论 -
力扣(Leecode)数据库-部分题目
/*编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State表1: Person列名 类型PersonId intFirstName varcharLastName varcharPersonId 是上表主键表2: Address列名 类型AddressId intPersonId ...原创 2020-06-09 09:28:16 · 374 阅读 · 0 评论