MySQL从表中获取多个项目作为另一个表的单个字段的输入

时间:2016-08-01 04:20:06

标签: python mysql

我有两张桌子,一张是老师,另一张是主题,我需要将主题链接到老师,这很简单,但问题是单个老师可以有多个主题。因此,我需要一种数组,所以当我用python进行查询时,它返回一个数组,或者我应该说'元组元组'元组。有人可以帮我解决这个问题吗?

由于

1 个答案:

答案 0 :(得分:1)

数据库架构是最重要的决定因素。这里似乎有2个方法由您或其他人决定制作映射表。

根据您的方法: -

id teacher_name Subject
1  XYZ          1,5,6,7

查询: -

SELECT teacher_name, subject_name 
  FROM subject s 
  INNER JOIN teacher t on FIND_IN_SET(s.id,t.subject)

其他是制作映射表: -

teacher_id subject_id
1          1
1          5
1          7

查询: -

SELECT teacher_name, subject_name 
   FROM mapping m 
   INNER JOIN subject s on m.subject_id = s.id
   INNER JOIN teacher t on m.teacher_id = t.id