【问题标题】: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?

感谢您的帮助。

【问题讨论】:

    标签: mysql


    【解决方案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'
      

      【讨论】:

        猜你喜欢
        • 2014-06-02
        • 1970-01-01
        • 2017-05-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-18
        • 1970-01-01
        相关资源
        最近更新 更多