我在这里有点进退两难,希望能提出意见
我有以下架构
User{id,name}
Class{id}
textbook{id,name,public}
class_textbook{id,class_id,textbook_id}
class_membership{id,user_id,class_id}
教科书.public 是一个布尔字段标记,如果教科书可供每个学生下载,或者只有参与分配该书的班级的学生可以下载
我想选择用户可用的每本教科书(公共的或分配在用户参与的课程中),但我必须知道哪本书是公开的,哪本书不是公开的,以及哪个课程是用公共教科书教授的。
解决这个问题的一种方法是运行两个查询,一个是让用户可以使用每本教科书,一个是找到公共的教科书
或者我可以定义一个 mysql 函数来为我执行此操作。