我有一个理论问题,我需要将其转换为 MySQL 中的数据库查询。
我有可以注册类(class)的学生。每个类(class)都有一些类讲座(内容)。 只有注册该类(class)的学生才能访问分配给该类(class)的讲座。每个讲座可以分配给 N 个类(class)。
我有几张 table :
包含 userID
字段的 USERS 表。
包含 contentID
字段的 CONTENT 表。
带有 classID
字段的 CLASS 表。
包含userID
和classID
字段的USERS-CLASSES 表
包含 classID
和 contentID
字段的 CONTENTS-CLASSES 表。
我不知道实际上应该如何制定查询来检查登录用户的用户 ID 是否与用户想要听的讲座的类(class)的 classID 相关联阅读属于(内容)。
任何线索将不胜感激。
最佳答案
这可以通过简单的 INNER JOIN 来完成
SELECT 1 FROM USERS-CLASSES uc
INNER JOIN CONTENTS-CLASSES cc ON cc.classID = uc.classID
WHERE uc.userID = {userID}
如果查询返回 1,则他们有权查看该内容。
如果您想知道用户 ID 和 classID,只需将其添加到您的位置即可。
SELECT 1 FROM USERS-CLASSES uc
INNER JOIN CONTENTS-CLASSES cc ON cc.classID = uc.classID
WHERE uc.userID = {userID}
AND uc.classID = {classID}
关于php - 检查登录用户是否有权访问内容的 MySQL 查询? (其中内容属于用户注册的类(class)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39460853/