根据第二个表中的数字更新表

时间:2016-06-06 19:08:05

标签: sql sql-server sql-server-2008 sql-server-2012

我是新手,编程并想知道是否有人可以帮助我进行SQL查询。我有3张桌子。表1称为Student(id,number,teacherID),表2nd表称为StudentUpdate(StudentId, teacher_number ),第三个表称为teacher(id,number,studentID)。

我想根据teacherID更新表1(学生表)中包含表2(学生更新)中的所有值。当表2包含教师编号而不是ID时,我该怎么办?我正在使用SQL Server 2012.感谢所有提前

1 个答案:

答案 0 :(得分:0)

您可以使用以下查询:

preg_match_all('/.*;/simxU', $text, $matches, PREG_PATTERN_ORDER);
$matches = $matches[0];

上述查询使用两个UPDATE s SET TeacherID = su.teacher_number FROM Student AS s JOIN Teacher AS t ON s.teacherID = t.id JOIN StudentUpdate AS su ON s.id = su.StudentId 操作执行UPDATE

    基于教师 的ID,
  • JOIN Student Teacher 根据学生的ID,
  • StudentUpdate Teacher

    以便从表StudentUpdate中提取UPDATE所需的信息(基于OP中给出的有限信息)。