创建MySQL分层递归查询
我有一个博客,有两种类型的页面:创建MySQL分层递归查询,mysql,sql,database,Mysql,Sql,Database,我有一个博客,有两种类型的页面: 打开的页面-每个人都可以查看该页面 关闭页面-只有页面的追随者才能查看帖子 页面的跟随者可以是单个用户或一组用户。 一个组可以包含单个用户或一组用户 我如何查询我的数据库,以知道用户X是否可以查看帖子Y 我的数据库是MySql数据库,我有以下表: 1实体 id : type : time_created 1 1 ... 2 1 ... 3 2
我的数据库是MySql数据库,我有以下表: 1实体
id : type : time_created
1 1 ...
2 1 ...
3 2 ...
4 2 ...
5 3 ...
6 3 ...
7 4 ...
8 4 ...
9 3 ...
2类
id : value
1 post
2 user
3 group
4 page
3页
id : page_id : is_closed : title
1 7 false "mordi"
1 8 true "cool"
4实体关系
id : id_one : relationship : id_two
1 1 "part_of" 7
2 2 "part_of" 8
3 3 "member_of" 5
4 5 "member_of" 6
5 6 "member_of" 9
6 9 "follower_of" 8
我需要找到实体id为3的用户可以查看实体id为2的帖子,因为3如果第5组的成员是6的成员,是6的成员,是9的成员,是第8页(封闭页面)的跟随者,帖子2是其中的一部分
谢谢大家! 我想你正在寻找递归的通用表表达式。如果你有MysQL 8.0+你可以使用递归CTE,否则谢谢你的回答!我使用的是MySQL 5.6,但您的参考资料是这个问题的一个非常简单的例子。。我有一个更复杂的查询,我想“但是你的参考是这个问题的一个非常简单的例子..我有一个更复杂的查询,我想”试着理解这个简单的例子,并扩展它,使它适用于你的问题。