【发布时间】:2013-04-20 22:35:32
【问题描述】:
我已经建立了以下表格(仅涉及的列)
桌面论坛:
编号 |论坛名称 |相关 ------------------------------ 1 |游戏 | 0 2 |动作游戏 | 1 // 论坛游戏子论坛 3 |角色扮演游戏 | 1 // 论坛游戏子论坛禁止表
编号 |用户援助 |论坛ID ---------------------- 1 | 56 | 1 // 用户 56 被论坛游戏禁止我要做的是构建一个函数来查看用户是否被论坛 X 禁止,如果他被禁止,他认为与论坛 X 相关的论坛被禁止。例如:用户 56 也被禁止来自论坛 rpg 游戏。
我写了以下没有用的查询:
选择 f.id, f. 相关的, b.useraid 为 u1, b2.useraid 作为 u2 来自论坛 f LEFT JOIN banlist b ON(b.forumid=f.id and b.useraid='56') LEFT JOIN banlist b2 ON(b2.forumid=f.relatedto and b2.useraid='56') 其中 f.id='2'有什么想法吗?
【问题讨论】:
-
结果集应该是什么样子的?
-
如果禁止则显示 1,否则显示 0。我建立的查询是一个尝试。
-
是否存在嵌套级别的父级到子级(例如孙子级)或只有一个级别?由于您使用的是 MySQL,因此单个级别会容易得多。顺便说一句 - 如果论坛表中存在,您当前的查询将始终返回一条记录。
-
目前没有孙辈可用:) 只有 2 个级别。论坛和子论坛。