select group_concat(name order by id separator ' / ') as 先修课程
from (select id,name
from (
select @id as _id, (SELECT @id := parent_id
FROM course
WHERE id = _id) AS parent_id
from (select @id := 8 ) vars,course) as tt
join course c on tt._id = c.id
) as t
结果如下:
若要求出每门课程的所有先修课。用一个select就难以实现了,实际中可以将查询逻辑封装到存储过程中实现。
Mysql无限级目录的构建与父目录查询问题当一个数据库中只有一张数据表的时候,是否有可能需要用到连接查询?设学生选课数据库中,使用SQL语句完成查询课程的先修课,列出课程名称以及它的先修课的名称。当一张表连接自身的连接称为自连接 。其应用场景主要是在构建无限多级目录。比如线上课程的多级目录,商品类别的无限分类,以及本题所探讨的先修课程的问题。以下就以先修课程为例进行阐述(这里只考虑每门课程...
分类之间的关系是怎样的? 很明显,一个分类下面可以是多个下级分类。反过来呢,一个下级分类能够属于几个上级分类呢?这个并不确定,得看具体的业务需求。如果是多个实现上会更加复杂,为了讨论层级设计,这里先限定每个分类仅有一个上级分类。
对于某个分类,需要支持的操作如下:
对单个分类的 CURD;
查询该分类的直属下级或所有下级分类;
以版面添加为例:pid值为0的数据为第一级;pid值等于id值的数据为这个id的子级
1.在repository中创建getGroupForums方法用来存储pid值相同的数据为一组
Forum[][int] getGroupForums() //二维数组
Forum[][int] groupForums;
foreach (forum; this....
文章目录一、MySQL存储引擎介绍二、MySQL逻辑架构1、逻辑架构剖析2、SQL语句的执行过程三、MySQL索引1、索引的数据结构2、索引的创建与设计原则3、索引优化和查询优化四、MySQL事务1、MySQL事务基本知识2、MySQL事务日志3、MySQL锁4、MySQL多版本并发控制
一、MySQL存储引擎介绍
MySQL存储引擎介绍
二、MySQL逻辑架构
1、逻辑架构剖析
2、SQL语句的执行过程
三、MySQL索引
1、索引的数据结构
2、索引的创建与设计原则
3、索引优化和查询优化
四、MySQ
MySQL学习笔记(5)——JOIN联表查询,自连接查询,分页和排序,子查询与嵌套查询
参考:https://www.bilibili.com/video/BV1NJ411J79W?p=18
以下SQL案例均已该建表语句为基础:
major专业表 :majorid专业ID,majorname专业名称,number专业人数
student学生表:id学号,name姓名,major...
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| datadir | /var/lib/mysql/ |
+---------------+-----------------+