如何在一列mysql中放置多个关系id?

Ram*_* ZK 1 php mysql sql

假设我有两张桌子,首先是:

   Course table  
   ----------------
   |id | name     |
   |0  | pr course|
   |1  | science  |
   ----------------
Run Code Online (Sandbox Code Playgroud)

另一个是:

Teacher table 
----------------------
|id | name | Courses |
|0  | mark | 0 ,1    |
|1 | john | 0        |
----------------------
Run Code Online (Sandbox Code Playgroud)

我想在课程栏中输入教师在连接语句中使用它们的课程的ID.做这样的事情的最佳方法是什么.我希望我很清楚,谢谢你.

sez*_*443 5

您设计数据库的方式会破坏First Normal Form,它表示数据库的每个属性都应该是原子的.通常,Courses列不是原子的,因为它是一个列表.

你需要创建一个像GivenBy这样的新表

   GivenBy table  
   ------------------------
   |course_id | teacher_id|
   ------------------------
Run Code Online (Sandbox Code Playgroud)

在此表中,主键由2列(course_id和teacher_id)组成.每行存储教师和课程之间的一种关系.最后,你应该有外键引用id的CourseTeacher