MS访问表,根据多列的匹配值返回行



我有一个class_session表和一个教师档案表。所以基本上每个class_session都会由一个以上的教师同时教授,表的结构是这样的:

Class_id |教师_1|教师_2

我想做的是在教师档案中创建一个表格,以显示该教师的所有记录,无论他/她在teacher_1还是teacher_2中。所以基本上我想看看老师参与的所有课程。

您不应该像以前那样设计表。如果你后来决定一节课可以由5名教师教授,你将需要为教师增加4个栏,这是不实用的,也不是一个好的设计。

你应该有一张会议桌和一张教师桌:

  • class_session:session_id|session_name|等等
  • class_tachers:teacher_id|teacher_name|等等

此外,您应该有一个用户为其教授哪个会话的表:

  • session_tachers:session_tacher_id|session_id|teacher_id

通过这种方式,您可以根据需要为任意数量的课程添加任意数量的教师。

现在,在教师表单中,您需要添加绑定到查询的子表单。该查询应该从sessions_teachers表内部获取数据,连接session和teacher表,并过滤出有问题的教师的记录。

最新更新