【发布时间】:2015-01-27 11:34:01
【问题描述】:
我有三个表 - myusers、organization_classrooms、organization_classrooms_myusers(这是一个位于 organization_classrooms 和 myusers 表之间的数据透视表)
organisation_classrooms(classroom_id, organization_id, title) organization_classrooms_myusers(classroom_id, user_id) myusers(user_id, organization_id, fullname)
我的一个模型中有以下 search() 函数:
return new CActiveDataProvider(OrganisationClassroom::model()->currentUserOrganisation(), array(
'criteria' => $criteria,
'pagination' => array(
'pageSize' => 10,
)
));
这是我正在使用的数据集
organisation_classrooms
classroom_id title organisation_id
1 Class A 37383
2 Class B 37383
3 Class C 37383
organisation_classrooms_myusers
classroom_id user_id
2 1558
3 1558
myusers
user_id organisation_id name
1558 37383 Bob Doe
我想修改模型,以便对于属于该组织的每个 organization_classroom,检查 user_id 1558 是否存在于 organization_classrooms_myusers 数据透视表中并基本上设置一个布尔值
例如
我想要通过上面用于 1558 的 user_id 的 organization_classrooms CActiveDataProvider 返回以下数据
classroom_id title organisation_id pivot_set
1 Class A 37383 0
2 Class B 37383 1
3 Class C 37383 1
任何人都可以建议如何解决这个问题吗?或者,如果有人可以演示一个原始 SQL 查询,该查询将产生这个结果,那也将非常有用。
【问题讨论】:
标签: sql yii frameworks