Mysql 如何根据另一个表中的值更新列?

Mysql 如何根据另一个表中的值更新列?,mysql,Mysql,如果等级表中的某些变量的ID与另一个表中选择的ID匹配,我想更新它们的ID: SELECT ID FROM posts WHERE post_parent = %d, $parent_id 根据我从上面的查询中得到的ID,现在,如何更新这个grade表中grade列中的变量 ID | user_id | grade 最好是一步到位——在一个代码中获取ID和更新等级。您可以使用内部连接 Update grades SET grade = ? WHERE ID IN (SELECT ID

如果等级表中的某些变量的ID与另一个表中选择的ID匹配,我想更新它们的ID:

SELECT ID
FROM posts
WHERE post_parent = %d, $parent_id
根据我从上面的查询中得到的ID,现在,如何更新这个grade表中grade列中的变量

ID  | user_id  | grade

最好是一步到位——在一个代码中获取ID和更新等级。

您可以使用内部连接

Update grades SET grade = ? 
WHERE ID IN (SELECT ID FROM posts WHERE post_parent = ?)
请尝试下面的代码

UPDATE a
SET grade ='your value' FROM grade a
INNER JOIN posts b ON a.id = b.id
WHERE b.post_parent = $parent_id

您可以使用用户内部联接

请尝试下面的代码

UPDATE a
SET grade ='your value' FROM grade a
INNER JOIN posts b ON a.id = b.id
WHERE b.post_parent = $parent_id