更新与另一个表的内部连接
Posted
技术标签:
【中文标题】更新与另一个表的内部连接【英文标题】:UPDATE on inner join with another table 【发布时间】:2015-05-07 18:41:39 【问题描述】:我正在尝试仅更新年龄为 21 岁且 users_auth.email 与 ban_users.email 匹配的 users.banned 值。 (ban_users 是一个单独的表)
UPDATE users_auth
SET users_auth.banned = '1'
WHERE age='21'
INNER JOIN ban_users
ON users_auth.email = ban_users.email
我找到了这两个帖子,但似乎都没有帮助。
SQL Server - inner join when updating
How do I UPDATE from a SELECT in SQL Server?
感谢您的帮助。
【问题讨论】:
【参考方案1】:语法不正确,应该如下。
UPDATE users_auth
INNER JOIN ban_users
ON users_auth.email = ban_users.email
SET users_auth.banned = '1'
WHERE age='21'
【讨论】:
【参考方案2】:试试这个:
UPDATE ua
SET banned = '1'
FROM users_auth ua
INNER JOIN ban_users
ON ua.email = ban_users.email
WHERE age='21'
【讨论】:
以上是关于更新与另一个表的内部连接的主要内容,如果未能解决你的问题,请参考以下文章