查询查询数据并将其插入到另一个表中


Querying and Inserting Queried Data into another Table

<?php 
$userinfo = mysql_query ("SELECT user_id FROM `users`");
while ($row=mysql_fetch_array($userinfo)) {
   sanitize_data($row);
   $user_id=$row['user_id'];
   if ($row['usertype']=='Teacher') {
   	      mysql_query("INSERT INTO teacher(teacher_id)
	  values('{$user_id}')");
   } else {
      mysql_query("INSERT INTO student(student_id)
	  values('{$user_id}')");
   }
}
?>

你能告诉我我的代码有什么问题吗?我想要的只是user_id teacher_id用户类型是教师并将user_id添加到student_id的"学生"表中(如果用户类型为"学生")。请帮助我确定出了什么问题,谢谢。

不需要使用 PHP 循环来执行此操作,您可以完全在 SQL 中执行此操作:

INSERT INTO teacher (teacher_id)
SELECT user_id
FROM users
WHERE usertype = 'Teacher';
INSERT INTO student (student_id)
SELECT user_id
FROM users
WHERE usertype != 'Teacher';