我有这两个表:
tbl_courses
id user_id course_name
3 5 First Course
4 5 Second Course
tbl_notes
id user_id course_id
1 5 3
2 5 4
我正在尝试编写一个简单的合并脚本,该脚本正在接收更新的课程标题:
course_name
例如,用户将
First Course
更改为Second Course
,并已请求将具有此新标题的所有注释合并到此注释中。所以我试图找到一种方法,用
tbl_notes
中的course_id更新First Course
中的所有条目,以匹配Second Course
的id我正在发送
$user_id
,$course_id
和$course_name
作为参数 最佳答案
如果我正确理解的话,可以查询您需要什么:
SQLFiddleexample
UPDATE `tbl_notes`
LEFT JOIN `tbl_courses`
ON `tbl_courses`.`user_id` =`tbl_notes`.`user_id`
AND `tbl_courses`.id = `tbl_notes`.`course_id`
SET `tbl_notes`.`course_id` = 4
WHERE `tbl_courses`.`course_name` ='First Course'
AND `tbl_courses`.`user_id` = 5
用PHP代码进行SQL查询:
$sql = "UPDATE `tbl_notes`
LEFT JOIN `tbl_courses`
ON `tbl_courses`.`user_id` =`tbl_notes`.`user_id`
AND `tbl_courses`.id = `tbl_notes`.`course_id`
SET `tbl_notes`.`course_id` = $course_id
WHERE `tbl_courses`.`course_name` ='First Course'
AND `tbl_courses`.`user_id` =$user_id ";